Signal equalization with compensation for scrambling code correlation

ABSTRACT

A method for equalizing a received radio signal in a WCDMA system, comprises receiving ( 210 ), in a radio receiver, of a digital radio signal spread by scrambling codes. A channel estimation is performed ( 230 ) on the received digital radio signal for a plurality of channels. The received digital radio signal is in an equalizer equalized ( 240 ) into an equalized digital radio signal. This equalizing is performed by combining a plurality of part signals, deduced from the digital radio signal, with a respective delay and a respective combining weight. The equalizing ( 240 ) comprises provision of the combining weights based on a signal impairment matrix having elements compensated for systematic colouring caused by said scrambling codes.

TECHNICAL FIELD

The present invention relates in general to methods and devices for equalization of received digital radio signals and in particular to such methods and devices in wideband code division multiple access communication systems.

BACKGROUND

In Wideband Code Division Multiple Access (WCDMA), the traditional way to demodulate a signal is to apply a Rake type of receiver. A Rake receiver combines energy received at different delays and from different antennas. This is done by despreading the data at the delays where significant amounts of energy can be found. The combining weights are typically directly determined from the channel estimates so that each despread path, a so-called Rake finger, is given a weight equal to the conjugated channel response at that delay. Rake receivers work well when the spreading factors are large, so that there is little correlation between the different Rake fingers.

With the introduction of Enhanced uplink (EUL) spreading factors (SF) as low as 2 are used, meaning that significant correlation may exist between different Rake fingers. In these scenarios the achievable rate is limited by self interference and multi user interference. For these situations, so-called Generalized Rake (GRake) receivers were designed. The GRake method estimates the correlations between Rake fingers and uses this correlation to modify the weights. Furthermore, with GRake there is also an option to define so-called interference suppression fingers that does not contain signal energy but can be used to suppress interference. The GRake correlations, or equivalently, the impairment matrix, can be estimated in several ways. The so-called parametric GRake utilizes knowledge of the used scrambling codes and channelization codes to derive code averaged weights. As input to the model, despread data from the pilot channel, the Dedicated Physical Control CHannel (DPCCH), is used. Another flavour of GRake, also often referred to as non-parametric GRake, uses an unused channelization code to estimate the impairment.

The parametric GRake method is known to perform well in suppressing self-interference from one user transmitting at very high rate with one user scenarios. This is especially true in DownLink (DL). The parametric GRake was first developed for DL and later modified for the UpLink (UL), where the performance also has been verified to be acceptable. The non parametric GRake has also shown very promising performance in UL simulations and also in tests in real hardware. However, in certain UL situations, the gain performance has been found to be somewhat less than expected. This has particularly been found in some situations where strong signal channels are separated by approximately one chip.

SUMMARY

A general object of the present invention is to improve signal equalization in wideband code division multiple access communication systems. This object is achieved by methods and devices according to the attached independent claims. Preferred embodiments are defined by the dependent claims. In general words, in a first aspect, a method for equalizing a received radio signal in a WCDMA system, comprises receiving, in a radio receiver, of a digital radio signal spread by scrambling codes. A channel estimation is performed on the received digital radio signal for a plurality of channels. The received digital radio signal is in an equalizer equalized into an equalized digital radio signal. This equalizing is performed by combining a plurality of part signals, deduced from the digital radio signal, with a respective delay and a respective combining weight. The equalizing comprises provision of the combining weights based on a signal impairment matrix having elements compensated for systematic colouring caused by said scrambling codes. In a second aspect, a radio receiver arrangement in a WCDMA system comprises a radio receiver and an equalizer, connected to the radio receiver. The radio receiver is configured for receiving a digital radio signal spread by scrambling codes. The equalizer comprises an equalizer core, a channel estimator and a combining weight estimator. The equalizer core is configured for combining a plurality of part signals, deduced from the digital radio signal, with a respective delay and a respective combining weight, into an equalized digital radio signal. The combining weight estimator is configured for providing the combining weights to the equalizer core. The combining weights are based on a signal impairment matrix having elements compensated for systematic colouring caused by the scrambling codes.

In a third aspect, a base station comprises a radio receiver arrangement according to the second aspect.

One advantage with the present invention is that the general performance of equalization in WCDMA systems is improved. Other advantages are discussed in connection with the detailed description of the different embodiments below.

BRIEF DESCRIPTION OF THE DRAWINGS

The invention, together with further objects and advantages thereof, may best be understood by making reference to the following description taken together with the accompanying drawings, in which:

FIG. 1 is a schematic illustration of a WCDMA communication system;

FIG. 2 is a schematic illustration of the generation of scrambling codes in WCDMA;

FIG. 3 is a block diagram of an embodiment of a radio receiver arrangement;

FIG. 4 is a flow diagram of steps of an embodiment of an equalizing method;

FIGS. 5 and 6 are block diagram of other embodiments of a radio receiver arrangement using parametric GRake symbol-level equalizing;

FIG. 7 is a flow diagram of steps of an embodiment of an equalizing step of an equalizing method using parametric GRake symbol-level equalizing;

FIGS. 8 and 9 are block diagram of other embodiments of a radio receiver arrangement using non-parametric GRake symbol-level equalizing;

FIG. 10 is a flow diagram of steps of an embodiment of an equalizing step of an equalizing method using non-parametric GRake symbol-level equalizing;

FIGS. 11 and 12 are block diagram of other embodiments of a radio receiver arrangement using chip-level equalizing;

FIG. 13 is a flow diagram of steps of an embodiment of an equalizing step of an equalizing method using chip-level equalizing; and

FIGS. 14-16 are block diagrams of embodiments of equalizers.

DETAILED DESCRIPTION

Throughout the drawings, the same reference numbers are used for similar or corresponding elements.

FIG. 1 illustrates a wireless communication system 1, having a Node B 20 with an antenna 21 serving a cell 10. A number of User Equipments (UE) 30 are present within the cell 10. Other UEs 31, connected to other Node B's may also be present in the vicinity of the cell 10. In the UL, many types of signals are present. The UEs 30 send e.g. data signals 32, 33 to the Node B 20 and may also send different control data signals 35. Furthermore, radio signals 34 from UEs outside the cell 10 may interfere as well as other types of external interfering signals 36.

In a direct spread code division multiple access (DS-CDMA) system, different spreading codes are used for distinguishing the different signals. Typically, the spreading code comprises a channelization code, which is unique for each type of data channel. Channels, such as DPCCH, Enhanced DPCCH (E-DPCCH) and Enhanced Dedicated Physical Data CHannel (E-DPDCH) in WCDMA, have their respective channelization codes in order to be able to distinguish different types of data from one and the same UE. The spreading code also comprises a scrambling code, which is intended to separate signals from different users. Each user has its own scrambling code, enabling the receiving Node B to separate radio signals from different UEs. To this end, the desired UL signal to be sent is spread in the UE by the scrambling codes and channelization codes before transmission, and the received UL radio signals are despread in the Node B, regaining the desired signal.

The transmitted radio signal also typically propagates in different paths, so-called multipath propagation. Each path that does not propagate directly between the transmitter and receiver will have an associated delay, compared to a direct path. The received radio signal will therefore be a combination of path signals separated in time.

The radio signal may also be transmitted and/or received by a multitude of antennas. This will further increase the number of paths between the transmitting and receiving party.

A first approach to account for such multipath signals was the Rake reception, in which a number of “fingers” were assigned to the different paths and the delay and weight of each finger was controlled to be combined into one common received signal. The weights were adapted to correspond to the different channel coefficients estimated by the channel estimator. Later the Generalised Rake (GRake) was developed to determine combining weights by a maximum-likelihood approach and finger placement strategy, i.e. the delays, and is based on maximizing output signal-to-interference-and-noise ratio (SINR).

These equalization procedures are typically performed in an equalizer 25 provided in the Node B 20.

Parametric GRake utilizes knowledge of the used scrambling codes and channelization codes to derive code averaged weights. However, the assumptions used in standard WCDMA when performing code averaging has turned out not to be perfectly true. The UL long scrambling code used in WCDMA has been found not to be completely random. The second and fourth order moments of a random code would be characterized by e.g. (the list is non-exhaustive) the conditions:

$\begin{matrix} {{{E\left( {{C\left( m_{1} \right)}{C^{*}\left( n_{2} \right)}} \right)} = {\delta \left( {m_{1} - n_{2}} \right)}}{{E\left( {{C\left( m_{1} \right)}{C\left( n_{2} \right)}} \right)} = 0}{{E\left( {{C\left( m_{1} \right)}{C^{*}\left( n_{2} \right)}{C\left( m_{2} \right)}{C^{*}\left( n_{1} \right)}} \right)} = \left\{ \begin{matrix} {1,{m_{1} = n_{2}},{m_{2} = n_{1}}} \\ {0,{otherwise}} \end{matrix} \right.}} & \left( {{1a} - c} \right) \end{matrix}$

This is true for most scrambling codes used in cellular standards. However, it has now been identified one notable exception in the long UL scrambling code used in WCDMA.

UL Long Scrambling Sequence

The following description of the UL scrambling sequence is mainly taken from the standard 3GPP TS 25.213, Spreading and modulation, v3.4.0 (2000-12). The long scrambling sequences c_(long,1,u) and c_(long,2,u) are constructed from position wise modulo 2 sum of 38400 chip segments of two binary m-sequences generated by means of two generator polynomials of degree 25. Let x, and y be the two m-sequences, respectively. The x sequence is constructed using the primitive (over GF(2)) polynomial X²⁵+X³+1. The y sequence is constructed using the polynomial X²⁵+X³+X²+X+1. The resulting sequences thus constitute segments of a set of Gold sequences.

The sequence c_(long,2,u) is a 16777232 chip shifted version of the sequence c_(long,1,u).

Let u₂₃ . . . u_(o) be the 24 bit binary representation of the scrambling sequence number u with u₀ being the least significant bit. The x sequence depends on the chosen scrambling sequence number u and is denoted x_(u), in the sequel. Furthermore, let x (m) and y(m) denote the m:th symbol of the sequence x_(u) and y, respectively. The m-sequences x_(u) and y are constructed as:

Initial conditions:

x _(u)(0)=u ₀ ,x _(u)(1)=u ₁ , . . . x _(u)(22)=u ₂₂ ,x _(u)(23)=u ₂₃ ,x _(u)(24)=1.  (2a)

y(0)=y(1)= . . . y(23)=y(24)=1.  (2b)

Recursive definition of subsequent symbols:

x _(u)(m+25)=x _(u)(m+3)+x _(u)(m)modulo2,m=0, . . . ,2²⁵−27.  (3a)

x _(u)(m+25)=x _(u)(m+3)+x _(u)(m+2)+x _(u)(m+1)+x _(u)(m)modulo2,m=0, . . . ,2²⁵−27.  (3b)

Define the binary Gold sequence z_(u) by:

z _(u)(m)=x _(u)(m)+y(m)modulo2,m=0, . . . ,2²⁵−2.  (4)

The real valued Gold sequence Z is defined by:

$\begin{matrix} {{Z_{u}(m)} = \left\{ {{{\begin{matrix} {+ 1} & {{{if}\mspace{14mu} {z_{u}(m)}} = 0} & \; \\ \; & \; & {for} \\ {- 1} & {{{if}\mspace{14mu} {z_{u}(m)}} = 1} & \; \end{matrix}\mspace{14mu} m} = 0},1,\ldots \mspace{14mu},{2^{25} - 2.}} \right.} & (5) \end{matrix}$

Now, the real-valued long scrambling sequences c_(long,1,u) and c_(long,2,u) are defined as follows:

c _(long,1,u)(m)=Z _(u)(m),m=0,1,2, . . . ,2²⁵−2  (6)

and

c _(long,2,u)(m)=Z _(u)((m+16777232)modulo(2²⁵−1)),m=0,1,2, . . . ,2²⁵−2.  (7)

Finally, the complex-valued long scrambling sequence C_(u) is defined as:

C _(u)(m)=c ^(long,1,u)(m)(1j(−1)^(m) c _(long,2,u)(2└m/2┘))  (8)

where m=0, 1, . . . , 2²⁵=2 and └ ┘ denotes rounding to nearest lower integer.

FIG. 2 illustrates a configuration of an uplink scrambling sequence generator.

An interesting correlation property of the UL scrambling code (8) will now be illustrated. In the following, note that c_(long,1,u)(m) and c_(long,2,u)(m) is either −1 or +1.

$\begin{matrix} \begin{matrix} {{\left( {C_{u}\left( {2m} \right)} \right)^{2}\left( {C_{u}\left( {{2m} + 1} \right)} \right)^{2^{*}}} = {= {c_{{long},1,u}*\left( {2m} \right)^{2}{c_{{long},1,u}\left( {{2m} + 1} \right)}^{2}}}} \\ {\left( {1 + {{j\left( {- 1} \right)}^{2m}{c_{{long},2,u}\left( {2\left\lfloor {2{m/2}} \right\rfloor} \right)}}} \right)^{2}} \\ {{\left( {1 + {{j\left( {- 1} \right)}^{{2m} + 1}{c_{{long},2,u}\left( {2\left\lfloor {{2m} + {1/2}} \right\rfloor} \right)}}} \right)^{2^{*}} =}} \\ {= \left( {1 + {{jc}_{{long},2,u}\left( {2\left\lfloor {2{m/2}} \right\rfloor} \right)}} \right)^{2}} \\ {{\left( {1 - {{jc}_{{long},2,u}\left( {2\left\lfloor {2{m/2}} \right\rfloor} \right)}} \right)^{2^{*}} =}} \\ {= \left( {2{{jc}_{{long},2,u}\left( {2\left\lfloor {2{m/2}} \right\rfloor} \right)}} \right)} \\ {{\left( {{- 2}{{jc}_{{long},2,u}\left( {2\left\lfloor {2{m/2}} \right\rfloor} \right)}} \right)^{*} = {- 4}}} \end{matrix} & (9) \end{matrix}$

To summarize, it has been found that:

C(2m)² C(2m+1)²*=−4

C(2m+1)² C(2m)²*=−4  (10a-b)

Note that the user index u is dropped since the property is valid for all code numbers. For later convenience the conjugated version was also added.

The properties (1a-c) have previously been used to derive code-averaged weights in receiver schemes like the parametric GRake schemes. To our knowledge the properties (10a-b) has not previously been utilized when designing optimal UL receiver weights. Below, it will be shown how the properties (10a-b) can be utilized to derive modified receiver weights for e.g. the parametric GRake as well as for non parametric GRake and chip level Linear Minimum Mean Square Error (LMMSE) equalization.

FIG. 3 illustrates an embodiment of a general radio receiver arrangement 2 in a WCDMA system. The radio receiver arrangement 2 comprises a radio receiver 23, which is configured for receiving a digital radio signal 24 spread by scrambling codes. An equalizer 25 is connected to the radio receiver 23. The equalizer 25 comprises an equalizer core 40, a channel estimator 60 and a combining weight estimator 70. The channel estimator 60 operates according to any conventional channel estimation principle, providing channel estimates h, which are provided to the combining weight estimator 70. The equalizer core 40 is configured for combining a plurality of part signals, deduced from the digital radio signal 24, with a respective delay and a respective combining weight w, resulting in an equalized digital radio signal z. The combining weight estimator 70 is configured for providing the combining weights w to the equalizer core 40. The combining weights w are based on a signal impairment matrix having elements compensated for systematic colouring caused by the scrambling codes.

In an embodiment of a radio receiver arrangement, the combining weight estimator is configured for compensating the elements in the impairment matrix for fourth order moments of the scrambling codes.

FIG. 4 illustrates a flow diagram of steps of an embodiment of a method for equalizing a received radio signal in a WCDMA system. The method starts in step 200. In step 210, a digital radio signal spread by scrambling codes is received in a radio receiver. In step 220, delays of energy peaks of the received digital radio signal are searched, which correspond to respective delays for a plurality of channels. This step can, as discussed above, be omitted. Presently, it is believed that it is advantageous to incorporate the step 220. In step 230, a channel estimation is performed on the received digital radio signal for a plurality of channels. In step 235, β factors of the received digital radio signal are determined. This can in standard WCDMA be performed by utilizing information in the E-DPCCH channel. This step may, however, in certain embodiments be excluded, e.g. for the parametric GRake with approximated corrections, discussed here below. The received digital radio signal is equalized in step 240, in an equalizer, into an equalized digital radio signal. The equalizing is performed by combining a plurality of part signals, deduced from the digital radio signal, with a respective delay and a respective combining weight. The step 240 of equalizing comprises provision of the combining weights based on a signal impairment matrix having elements compensated for systematic colouring caused by the scrambling codes. The procedure ends in step 299.

In a detailed embodiment, a parametric GRake system will be discussed. Most of the mathematical derivation is collected in Appendix A further below, for detail references.

A basic signal model is defined by the equations (A1) and (A2). A simplified example of a set of GRake equations are then presented in connection to equations (A3) to (A8). The optimal estimator defined in (A8) defines the weights for the different received part signals as:

w=SF _(c)β_(c) h*R _(u) ⁻¹,  (11)

By use of the traditionally considered scrambling code properties (1a-d), a covariance R_(c) for a despread DPCCH symbol can be expressed as (c.f. A15):

$\begin{matrix} {{R_{c}\left( {f_{1},f_{2}} \right)} = {{{{SF}_{c}\left( {\beta_{c}^{2} + \beta_{ec}^{2} + \beta_{{ed},{{sf}\; 2}}^{2} + \beta_{{ed},{{sf}\; 4}}^{2}} \right)}{R_{ran}\left( {f_{1},f_{2}} \right)}} = {{SF}_{c}N_{0}{R_{n}\left( {f_{2} - f_{1}} \right)}}}} & (12) \\ {\mspace{79mu} {{R_{ran}\left( {f_{1},f_{2}} \right)} = {\sum\limits_{\underset{m \neq 0}{m = {- \infty}}}^{\infty}{{h^{a}\left( {f_{1} + {mT}} \right)}{h^{b^{*}}\left( {f_{2} + {mT}} \right)}}}}} & (13) \end{matrix}$

where N₀ is the noise spectral density and R_(n) represents the covariance between noise of different fingers.

If also the newly considered colouring properties (10a-b) of UL scrambling codes are taken into account, the GRake equation will change somewhat. The covariance R, for a despread DPCCH symbol can then be expressed as (c.f. A23):

R _(c)(f ₁ ,f ₂)=SF _(c)(β_(c) ²+β_(ec) ²+β_(ed,sf2) ²+β_(ed,sf4) ²)R _(ran)(f ₁ ,f ₂)+SF _(c) N ₀ R _(n)(f ₂ −f ₁)±SF _(c)(0.5β_(c) ²+0.5β_(ec) ²−0.5β_(ed,sf2)+0.5β_(ed,sf4) ²)R _(ul)(f ₁ ,f ₂)  (14)

R _(ul)(f ₁ ,f ₂)=h ^(a)(f ₁ +T)h ^(b)*(f ₂ −T)+h ^(a)(f ₁ −T)h ^(b)*(f ₂ +T)  (15)

Due to the differing signs in front of the different factors, different corrections should be applied for different usage of control and data channels.

The channel responses are assumed to be known by a channel estimation procedure. The details of such a channel estimation can be performed according to any prior art methods known by anyone skilled in the art and are not believed to be of any particular importance for the technical effect of the present invention. Such channel estimation is therefore not further discussed.

By the received channel signal corresponding to a pre-known pilot signal, the weights of the different received part signals can be determined, i.e. basically the covariance matrix. This is performed according to typical standard GRake principles, known as such in prior art. A total energy and noise power can also be obtained using the results of any of (A28)-(A30), whichever is applicable.

From the equation (11), the weights for the data channel can be computed, using equations (A32) to (A36).

As a summary, the parametric GRake equations are modified to take into account the so far neglected properties of the UL long scrambling code. Different model equations are needed depending on if only SF4 or SF2 is used or a combination of 2SF2+2SF4. The despreading of the data channel s, e.g. E-DPDCH, should apply different impairment matrices, i.e. different weights, for SF2 and SF4, respectively.

In the embodiment of FIG. 5, the equalizer 25 is a symbol-level equalizer. This means that the actual equalizing is performed on despread digital radio signals, i.e. on entire symbols. To this end, the equalizer core 40 comprises a divider 41. The divider 41 is configured for dividing the received digital signal 24 in a plurality of part signals 46. A delay filter 42, comprised in each branch of the equalizer core 40 delays each part signal by a respective delay into delayed part signals 47. In this embodiment, the respective delays are provided by the channel searcher 50. The delay filters 42 can be provided as separate filters or as a common filter for all branches, but with varying delays. A despreader arrangement 43 is configured for despreading each delayed part signal 47 into a symbol-level part signal 48 by a spreading code. The despreader arrangement 43 can be provided as separate arrangements or as a common arrangement for all branches. The equalizer core 40 also comprises a combiner 45, which combines the symbol-level part signals 48 with the respective combining weights w into the equalized digital radio signal 49. This is illustrated in the figure by a plurality of scalers and an adder.

In the present embodiment, the combining weight estimator 70 is provided with the received digital signal 24. Analogously to the equalizer core, the received digital signal 24 is divided into a plurality of part signals in a divider 71 and delayed by delay filters 72. The combining weight estimator 70 further comprises an estimator despreader 73, configured for despreading each part signal with a second spreading code of a control channel comprising a pilot signal. The combining weight estimator 70 further comprises an impairment matrix estimator 74 configured for, in a pilot impairment matrix section 75, estimating a pilot impairment matrix. With the “pilot impairment matrix” is here to be understood an impairment matrix estimated based on the pilot signal of the control channel. The pilot impairment matrix has elements compensated for systematic colouring caused by the scrambling codes. The impairment matrix estimator 74 of the combining weight estimator 70 is further configured for, in a signal impairment matrix section 76, modifying the pilot impairment matrix into the signal impairment matrix in dependence on the first and second spreading factors. The channel estimates h are provided to the impairment matrix estimator 74 from the channel estimator 60 and an identification of the first channel c to which the equalization is to be performed is received from the despreader arrangement 43. The impairment matrix estimator 74 of the combining weight estimator 70 is thus able to provide the combiner 45 of the equalizer core 40 with appropriate combining weights w₁-w_(n).

FIG. 6 illustrates another embodiment of a radio receiver arrangement 2 in a WCDMA system according to the GRake approach. In this embodiment, the combining weight estimator 70 makes use of the division and delay provided for in the equalizer core 40 and received a plurality of delayed part signals 47. These delayed part signals are subsequently despread by an estimator despreader 73, configured for despreading each part signal with a second spreading code of a control channel comprising a pilot signal.

FIG. 7 illustrates an embodiment of the equalizing step 240 (of FIG. 4) for a symbol-level equalizing method based on GRake. In step 241, the received digital signal is divided in the plurality of part signals. Each part signal represents a respective channel of the plurality of channels. Each part signal is in step 242 delayed by the respective delay into delayed part signals. In step 243 the respective combining weights are calculated as a product of the channel estimations and an inverse of the signal impairment matrix.

In this embodiment, the step 243 of calculating comprises the step 245 of despreading each part signal with a second spreading code of a control channel comprising a pilot signal. The calculating further comprises a step 246 of estimating a pilot impairment matrix having elements compensated for systematic colouring caused by the scrambling codes and of modifying the pilot impairment matrix into the signal impairment matrix in dependence on the first and second spreading factors.

In step 247, each part signal is despread into a symbol-level part signal by a first spreading code. The symbol-level part signals are in step 248 combined with the respective combining weights into the equalized digital radio signal.

As briefly mentioned in the background, another flavour of GRake, also often referred to as non-parametric GRake, uses an unused channelization code to estimate the impairment. The non-parametric GRake has shown very promising performance, particularly in the UL. However, the anomaly of the UL scrambling codes, discussed further above does also affect this approach.

In another detailed embodiment, a non-parametric GRake system will be discussed. Most of the mathematical derivation is collected in Appendix B further below, for detail references.

Divide the set of channelization codes into two sub-trees:

OVSF=OVSF(“11”)∪OVSF(“1−1”).  (16)

They will be referred to as the first and second sub-tree, respectively. The importance here is that the first sub-tree contains the control channels and most of the data channels, as for example SF4.1. It also contains unused codes, e.g. codes 16.1 and 16.3 (of 3GPP TS 25.213, Spreading and modulation, v3.4.0 (2000-12)), used to estimate the impairment matrix. The second sub-tree e.g. contains the channelization code SF2.1, which is most sensitive to interference.

A new expression for the impairment matrix is derived in Appendix B. This expression depends on the spreading code on the sent data and the spreading code used in the despreading. The method compensates for incorrect estimates of the impairment matrix.

If the impairment matrix is estimated in one of the channelization sub-trees utilizing an unused code, and used in the GRake+ with a channelization code from the other sub-tree, then the impairment matrix should be corrected with a factor R_(e) ^(corr) (c.f. B16):

$\begin{matrix} {{R_{e}^{corr}\left( {f_{1},f_{2}} \right)} = {{- \left( {{h_{f_{1} + 1}h_{f_{2} - 1}^{*}} + {h_{f_{1} - 1}h_{f_{2} + 1}^{*}}} \right)}\frac{1}{{SF}_{c_{t}}}{\sum\limits_{i}^{\;}{{{sign}\left( {c_{r},c_{t}^{i}} \right)}{\beta_{i}^{2}.}}}}} & (17) \end{matrix}$

Here {c_(t) ^(i), β^(i) ² }_(i) are the channelization codes and beta factors for the different data channels from the UE of interest, h_(m) is the channel and c_(r) is the channelization code used in the GRake+ receiver or as the unused code in the impairment estimator. The function sign(c_(r),c_(t)) is one if the codes c_(r),c_(t) are from the same OSVF sub-tree and −1 otherwise.

The result extends easily to several antennas:

$\begin{matrix} {{\left( R_{e}^{\alpha,\beta} \right)^{corr}\left( {f_{1},f_{2}} \right)} = {{- \left( {{h_{f_{1} + 1}^{\alpha}\left( h_{f_{2} - 1}^{\beta} \right)}^{*} + {h_{f_{1} - 1}^{\alpha}\left( h_{f_{2} + 1}^{\beta} \right)}^{*}} \right)}\frac{1}{{SF}_{c_{r}}}\frac{1}{{SF}_{c_{t}}}{\sum\limits_{i}^{\;}{{{sign}\left( {c_{r},c_{t}^{i}} \right)}\beta^{i^{2}}}}}} & (18) \end{matrix}$

where α and β are antenna indices.

The impairment matrix is thus estimated using an unused code.

When the impairment matrix is to be used to compute the non-parametric GRake weights for data despread with a code from the other OSVF sub-tree, then the impairment matrix has to be compensated to give the correct values. In practical non-parametric GRake, this applies among other examples to the important case where the impairment is estimated using code 16.3 and/or 16.1, and the data is despread from the other sub-tree using e.g. code 2.1.

Since the non-parametric GRake equalizer is a symbol-level equalizer, a radio receiver arrangement in a WCDMA system according to the non-parametric GRake approach resembles to large parts the embodiment of FIG. 5. However, since the correction factors require knowledge of the β factors, some minor modifications have to be performed. FIG. 8 illustrates such a radio receiver arrangement 2 in a WCDMA system according to the non-parametric GRake approach.

A β factor determiner 80 is provided with the received signal 24. In the standard WCDMA, the E-DPCCH comprises a Retransmission Sequence Number (RSN), an Enhanced Dedicated Transport CHhannel (E-DCH) Transport Format Combination Index (E-TFCI) and a so-called “happy bit”. The E-TFCI is an index to a table from which the number of information bits, the Transport Block Size (TBS), can be determined. There are more than one Transport format tables in the standard, so the NodeB is informed by the Radio Network Controller (RNC) about which table to be used. When the TBS has been determined, the NodeB can determine the number of physical channels and their spreading factors using a standardized algorithm. For the β factor calculation, the NodeB is informed by the RNC about the set of reference ETFCIs and gain factors for these reference E-TFCIs. The necessary information from the NodeB is illustrated by the broken input arrow. The β factors for a given E-TFCI are provided by extrapolation or interpolation from the reference E-TFCI that is closest but smaller than the given E-TFCI. Typically, the power is increased proportionally with the TBS. The β factors 81 are provided to the combining weight estimator 70 in this embodiment.

In this embodiment, the combining weight estimator 70 comprises an estimator despreader 73, configured for despreading each part signal with a second spreading code. However, now the second spreading code corresponds to an unused channel. The impairment matrix estimator 74 of the combining weight estimator 70 is now configured for estimating, in a noise impairment matrix section 77, a noise impairment matrix for an unused code. In analogy with the terminology used before, “noise impairment matrix” should be interpreted as an impairment matrix based on noise obtained by analysis of an unused channel. The noise impairment matrix for an unused code has elements compensated for systematic colouring caused by the scrambling codes. The impairment matrix estimator 74 of the combining weight estimator 70 is further configured for, in the signal impairment matrix section 76, modifying the noise impairment matrix for an unused code into the signal impairment matrix in dependence on the first and second spreading factors according to the above discussions. In other words, the correction factor R_(u) ^(corr) is to be added. In particular, the modification is made in dependence on whether the first and second spreading factors are present in a same orthogonal variable spreading factor sub-tree or not. The set of weights w₁-w_(n) provided to the equalizer core 40 are thus one set out of two possible sets. The actual selection is made in dependence of the sub-tree to which the first spreading factor belongs, i.e. to which sub-tree the data channel spreading code belongs.

It can be noted that with incorporation of a β factor determiner also in the radio receiver arrangements of FIG. 5 or 6, the impairment matrix estimator 74 could be configured to use also β factors in its calculations. This would then mean that the approximations of (A29) and (A30) could be exchanged for the original expressions. However, this would also make the allover calculations and arrangements more complex.

FIG. 9 illustrates another embodiment of a non-parametric GRake equalizer 25. This embodiment resembles FIG. 6, but with similar modifications as was presented in connection with FIG. 8.

FIG. 10 illustrates an embodiment of the equalizing step 240 (of FIG. 4) for a symbol-level equalizing method based on GRake. Steps 241 and 242 are basically the same as described in connection with FIG. 7. The basic features of step 243 is also still that the respective combining weights are calculated as a product of the channel estimations and an inverse of the signal impairment matrix.

In this embodiment, however, the step 243 of calculating comprises the step 245 of despreading each part signal with a second spreading code of an unused channel. The calculating further comprises the step 246 of estimating a noise impairment matrix having elements compensated for systematic colouring caused by the scrambling codes and of modifying the noise impairment matrix into the signal impairment matrix in dependence on the first and second spreading factors, in particular in dependence on whether the first and second spreading factors are present in a same orthogonal variable spreading factor sub-tree or not. These corrections do also use information about the channel estimates and the β factors.

In step 247, each part signal is despread into a symbol-level part signal by a first spreading code. The symbol-level part signals are in step 248 combined with the respective combining weights into the equalized digital radio signal.

An alternative to GRake that is used in WCDMA systems of today is a chip level LMMSE equalizer. In a chip level equalizer, a filtering before despreading replaces the GRake combining, so only a single correlator is needed. The most common approach for designing the weights of the chip equalization filter is a LMMSE approach, which minimizes the mean-square error between the output of the filter and the composite transmitted chip value.

The LMMSE has the advantage of only relying on the autocorrelation function of the antenna data, which is common for all users and easy to estimate. It has now been proven that the GRake receiver and the LMMSE receiver only differ by a scaling factor. However, that proof uses the assumption that the scrambling codes are completely random. This fact is not only needed for the second order momentum, but also on the fourth order momentum. Since, as discussed above, the UL scrambling codes have a strange correlation in the fourth order momentum, this has to be considered also in LMMSE.

During the actual LMMSE procedure, only the autocorrelation function of the antenna data is used. This means that only terms involving products of two scrambling codes appear in the calculations of the autocorrelation matrix R_(y). Consequently, the weights for combining the different part signals in the LMMSE filter are also only dependent on a product of two scrambling codes. This thus means that there is no effect of the fourth order momentum correlations.

However, in the subsequent step, a despreading is performed for retrieving the symbols of the different channels. In this procedure, the fourth order momentum will appear and introduce anomalities due to the now found correlations. Such influence will furthermore be different for different channels and will also depend on the other channels present in the recovered signal. The best way to deal with such effects is to introduce a correction of the combination weights, dependent on the channel to be despread, i.e. before the despreading procedure.

The autocorrelation function is estimated using antenna chip samples. This is common for all users. For each user a correction R_(y) ^(corr) of the impairment matrix is computed to compensate for the correlation in the UL scrambling codes. The sign of the compensation depends on the channelization code tree that is used. The correction also depends on the UE channel estimates and beta factors. This is further explained in Appendix C, where equation (C3) describes the necessary corrections.

FIG. 11 illustrates an embodiment of a radio receiver arrangement 2 in a WCDMA system of a chip-level equalization type. The digital radio signal 24 is provided to a filter 55 of the equalization core 40. The filter 55 has the effect of combining weighted and delayed part signals at a chip level. The filter 55 is configured for filtering the received digital signal into an equalized chip signal, minimizing a distortion by use of a least minimum mean square error approach. The weights are determined in an impairment matrix estimator 84, starting with the autocorrelation function between the part signals. The autocorrelation function is estimated using antenna chip samples. The combination weight estimator 70 filter is thus configured, in an autocorrelation impairment section 82, for calculating an autocorrelation impairment matrix R_(y). The combination weight estimator 70 in this embodiment further computes, in a signal impairment section 83, a correction R_(y) ^(corr) to precompensate for the correlation in the UL scrambling codes into a signal impairment matrix. This correction makes use of knowledge of the channelization code to be used for the subsequent despreading. These corrections do also use information about the channel estimates and the β factors in analogy with the non-parametric GRake approach described above. The respective combining weight for each chip-level part signal is provided as a product of the channel estimations and an inverse of the corrected signal impairment matrix. The weights are then provided to be used in the filter 55.

The equalized digital chip-level signal 54 is provided to a despreader arrangement 56, despreading the equalized digital chip-level signal 54 into a symbol-level by a spreading code, giving the equalized digital radio signal 49. This is performed by the channelization code that was indicated to the signal impairment section 83.

FIG. 12 illustrates another embodiment of a radio receiver arrangement 2 in a WCDMA system of a chip-level equalization type. In this embodiment, a channel searcher 50 is present, assisting in finding suitable channel delays. In the particular embodiment of FIG. 12, the results, i.e. the delay values τ 51, of the channel searcher 50 are provided to the filter 55 for making the filtering efficient. However, the autocorrelation is performed for all possible delays. This has the advantage of obtaining the best possible measure of the overall autocorrelation. In an alternative embodiment, the delay values τ 51 may be provided to both the filter 55 and the combination weight estimator 70.

FIG. 13 illustrates an embodiment of the equalizing step 240 (of FIG. 4) for a chip-level equalizing method based LMMSE. In step 251, the received digital signal is filtered into an equalized chip signal, minimizing a distortion by use of a least minimum mean square error approach. The filtering comprises the step 252 of calculating the respective combining weight for each chip-level part signal as a product of the channel estimations and an inverse of the signal impairment matrix. In step 253, an autocorrelation impairment matrix is calculated using the autocorrelation of the chip-level signal. In step 254, the autocorrelation impairment matrix is precompensated into a signal impairment matrix by compensating a subsequently appearance of systematic colouring that will be caused by the scrambling codes in a subsequent despreading procedure. The precompensation depends on the spreading code that is going to be used in the subsequent step and the spreading codes of the available channels. In step 258, the equalized chip signal is despread to a symbol-level by a first spreading code, giving the equalized digital radio signal.

As an implementation example, FIG. 14 is a block diagram illustrating an example embodiment of an equalizer 25. This embodiment is based on a processor 160, for example a micro processor, a memory 161, a system bus 162, an input/output (I/O) controller 163 and an I/O bus 164. In this embodiment the received digital radio signal is received by the I/O controller 163 are stored in the memory 161. The I/O controller 163 also controls the issue of the equalized digital radio signal. The processor 160 executes a software component 181 for performing a channel estimation on the received digital radio signal, and a software component 182 for equalizing the received digital radio signal. The software component 182 comprises a software part component 183 for dividing the received digital in part signals, a software part component 184 for delaying each part signal by a respective delay, a software part component 185 for calculating a respective combining weight by despreading each part signal with a spreading code of a control channel comprising a pilot signal, estimating a pilot impairment matrix and modifying the pilot impairment matrix into a signal impairment matrix, a software part component 187 for despreading each part signal into a symbol-level part signal, and a software part component 188 for combining the symbol-level part signals. This software is stored in the memory 161. The processor 160 communicates with the memory 161 over the system bus 162. Software component 181 may implement the functionality of block 60 in the embodiments of FIG. 3, 5 or 6. Software component 182 may implement the functionality of blocks 40 and 70 in the embodiments of FIG. 3, 5 or 6. Software part component 183 may implement the functionality of block 41 in the embodiments of FIG. 5 or 6. Software part component 184 may implement the functionality of blocks 42 in the embodiments of FIG. 5 or 6. Software part component 185 may implement the functionality of block 70 in the embodiments of FIG. 3, 5 or 6. Software part component 187 may implement the functionality of blocks 43 in the embodiments of FIG. 5 or 6. Software part component 188 may implement the functionality of block 45 in the embodiments of FIG. 5 or 6.

As an implementation example, FIG. 15 is a block diagram illustrating an example embodiment of an equalizer 25. This embodiment is based on a processor 160, for example a micro processor, a memory 161, a system bus 162, an input/output (I/O) controller 163 and an I/O bus 164. In this embodiment the received digital radio signal is received by the I/O controller 163 are stored in the memory 161. The I/O controller 163 also controls the issue of the equalized digital radio signal. The processor 160 executes a software component 181 for performing a channel estimation on the received digital radio signal, and a software component 182 for equalizing the received digital radio signal. The software component 182 comprises a software part component 183 for dividing the received digital in part signals, a software part component 184 for delaying each part signal by a respective delay, a software part component 186 for calculating a respective combining weight by despreading each part signal with a spreading code of an unused channel, estimating a noise impairment matrix and modifying the noise impairment matrix into a signal impairment matrix, a software part component 187 for despreading each part signal into a symbol-level part signal, and a software part component 188 for combining the symbol-level part signals. This software is stored in the memory 161. The processor 160 communicates with the memory 161 over the system bus 162. Software component 181 may implement the functionality of block 60 in the embodiments of FIG. 3, 5 or 6. Software component 182 may implement the functionality of blocks 40 and 70 in the embodiments of FIG. 3, 5 or 6. Software part component 183 may implement the functionality of block 41 in the embodiments of FIG. 5 or 6. Software part component 184 may implement the functionality of blocks 42 in the embodiments of FIG. 5 or 6. Software part component 186 may implement the functionality of block 70 in the embodiments of FIG. 3, 5 or 6. Software part component 187 may implement the functionality of blocks 43 in the embodiments of FIG. 5 or 6. Software part component 188 may implement the functionality of block 45 in the embodiments of FIG. 5 or 6.

As an implementation example, FIG. 16 is a block diagram illustrating an example embodiment of an equalizer 25. This embodiment is based on a processor 160, for example a micro processor, a memory 161, a system bus 162, an input/output (I/O) controller 163 and an I/O bus 164. In this embodiment the received digital radio signal is received by the I/O controller 163 are stored in the memory 161. The I/O controller 163 also controls the issue of the equalized digital radio signal. The processor 160 executes a software component 181 for performing a channel estimation on the received digital radio signal, and a software component 182 for equalizing the received digital radio signal. The software component 182 comprises a software part component 189 for filtering the received digital signal into an equalized chip signal by calculating a respective combining weight, a software part component 190 for despreading the equalized chip signal to a symbol level. This software is stored in the memory 161. The processor 160 communicates with the memory 161 over the system bus 162. Software component 181 may implement the functionality of block 60 in the embodiments of FIG. 3, 9 or 10. Software component 182 may implement the functionality of blocks 40 and 70 in the embodiments of FIG. 3, 9 or 10. Software part component 189 may implement the functionality of blocks 55 and 70 in the embodiments of FIG. 9 or 10. Software part component 190 may implement the functionality of block 56 in the embodiments of FIG. 9 or 10.

The embodiments described above are to be understood as a few illustrative examples of the present invention. It will be understood by those skilled in the art that various modifications, combinations and changes may be made to the embodiments without departing from the scope of the present invention. In particular, different part solutions in the different embodiments can be combined in other configurations, where technically possible. The scope of the present invention is, however, defined by the appended claims.

APPENDIX A GRake Signal Model

A model of a UE transmitted signal s(t) is given below.

$\begin{matrix} {{s(t)} = {\sum\limits_{m = {- \infty}}^{\infty}{\left( {\sum\limits_{n = 1}^{Ncodes}{\beta_{n}{c_{n}(m)}{C(m)}{s_{n}\left( \left\lfloor \frac{m}{{SF}_{n}} \right\rfloor \right)}}} \right){\delta \left( {t - {mT}} \right)}}}} & ({A1}) \end{matrix}$

Here β_(n) is the amplitude for each physical channel code (DPCCH β_(c), E-DPCCH β_(ec) and E-DPDCH β_(ed,SF2), β_(ed,SF4) are considered here), c_(n) is the real-valued channelization code, C is the complex-valued scrambling code, in the following normalized to energy 1. s_(n) is the transmitted signal, which may be either real-valued or complex-valued, but here it will be assumed to be of norm 1. If both I and Q components are transmitted, the β_(n) is scaled accordingly. SF is the spreading factor. Typically for 2 ms Transmission Time Interval (TTI) in Enhanced UpLink (EUL), β_(n)ε{β_(c), β_(ec), β_(ed,SF2), β_(ed,SF4)} and SF_(n)ε{2,4,256}. T is the chip interval 1/3.84 μs. The combinations of used spreading factors on E-DPDCH are 1SF4, 2SF4, SF2 and 2SF2+2SF4.

The received signal on antenna #a y^(a)(t) has the following general form:

$\begin{matrix} \begin{matrix} {{y^{a}(t)} = {{\int\limits_{- \infty}^{\infty}{h^{a}*(\tau){s\left( {t - \tau} \right)}{\tau}}} + {^{a}(t)}}} \\ {= {{\sum\limits_{m = {- \infty}}^{\infty}{{h^{a}\left( {t - {mT}} \right)}\left( {\sum\limits_{n = 1}^{Ncodes}{\beta_{n}{c_{n}(m)}{C(m)}{s_{n}\left( \left\lfloor \frac{m}{{SF}_{n}} \right\rfloor \right)}}} \right)}} + {^{a}(t)}}} \end{matrix} & ({A2}) \end{matrix}$

where h(t) is a channel and e(t) is noise. In this formulation the impact of the RRC filtering at transmit and receive side is part of the channel h(t) and also impact the statistics of the noise term e(t) Parametric GRake equations

In the following, we will derive the statistics of the despread physical channels assuming only that DPCCH and one E-DPDCH channel is transmitted. However the results will be valid and possible to generalize to all codes. After despreading DPCCH at finger delay f to obtain the signal s_(c) (0) we get:

$\begin{matrix} \begin{matrix} {{r_{c}^{a}(f)} = {\sum\limits_{n = 0}^{{SF}_{c - 1}}{{y^{a}\left( {{nT} + f} \right)}{c_{c}(n)}C*(n)}}} \\ {= {\sum\limits_{n = 0}^{{SF}_{c - 1}}{\sum\limits_{m = {- \infty}}^{\infty}\; {h^{a}\left( {{nT} + f - {mT}} \right)}}}} \\ {{\beta_{c}{c_{c}(m)}{C(m)}{s_{c}\left( \left\lfloor \frac{m}{{SF}_{c}} \right\rfloor \right)}{c_{c}(n)}C^{*}}} \\ {{(n) + {\sum\limits_{n = 0}^{{SFc} - 1}{\sum\limits_{m = {- \infty}}^{\infty}\; {h^{a}\left( {{nT} + f - {mT}} \right)}}}}} \\ {{\beta_{ed}{c_{ed}(m)}{C(m)}{s_{ed}\left( \left\lfloor \frac{m}{{SF}_{ed}} \right\rfloor \right)}{c_{c}(n)}C^{*}}} \\ {{(n) + {\sum\limits_{n = 0}^{{SF}_{c - 1}}{{^{a}\left( {{nT} + f} \right)}{c_{c}(n)}{C^{*}(n)}}}}} \end{matrix} & ({A3}) \end{matrix}$

This can be written:

$\begin{matrix} {\mspace{79mu} {{{r_{c}^{a}(f)} = {{{SF}_{c}\beta_{c}h_{a,f}{s_{c}(0)}} + {\beta_{c}{z_{c,c}^{a}(f)}} + {\beta_{ed}^{\;}{z_{c,{ed}}^{a}(f)}} + {v_{c}^{a}(f)}}},\mspace{79mu} {{with}\text{:}}}} & ({A4}) \\ {{z_{c,c}^{a}(f)} = {\sum\limits_{n = 0}^{{SF}_{c - 1}}{\sum\limits_{\underset{m \neq n}{m = {- \infty}}}^{\infty}{{h^{a}\left( {{nT} + f - {mT}} \right)}{c_{c}(m)}{C(m)}{s_{c}\left( \left\lfloor \frac{m}{{SF}_{c}} \right\rfloor \right)}{c_{c}(n)}{C^{*}(n)}}}}} & ({A5}) \\ {{z_{c,{ed}}^{a}(f)} = {\sum\limits_{n = 0}^{{SF}_{c - 1}}{\sum\limits_{\underset{m \neq n}{m = {- \infty}}}^{\infty}{{h^{a}\left( {{nT} + f - {mT}} \right)}{c_{ed}(m)}{C(m)}{s_{ed}\left( \left\lfloor \frac{m}{{SF}_{ed}} \right\rfloor \right)}{c_{c}(n)}{C^{*}(n)}}}}} & ({A6}) \\ {\mspace{79mu} {{v_{c}^{a}(f)} = {\sum\limits_{n = 0}^{{SF}_{c - 1}}{{^{a}\left( {{nT} + f} \right)}{c_{c}(n)}{C^{*}(n)}}}}} & ({A7}) \end{matrix}$

The first term is the desired signal. The condition m≠n in the second term is due to the desired term which has been broken out, while this condition on the third term is due to that the codes are orthogonal at zero shift when summed over N chips.

An optimal estimator ŝ_(c)(0) of the desired signal would take the form:

ŝ _(c)(0)=SF _(c)β_(c) h*R _(u) ⁻¹ r _(c),  (A8)

where the equation (A4) is vectorized. Here R_(u) is the covariance matrix of the impairment terms in (A4).

Scrambling Code Properties

The UL long scrambling code used in WCDMA is not completely random. The second and fourth order moments of a random code would be characterized by (c.f. (1a-d)):

E(C(m ₁)C*(n ₂))=δ(m ₁ −n ₂)

E(C(m ₁)C(n ₂))=0

E(C(m ₁)C*(n ₂)C(m ₂)C*(n ₁))=1,m ₁ =n ₂ ,m ₂ =n ₁

E(C(m ₁)C*(n ₂)C(n ₂)C*(n ₁))=0,otherwise  (A9a-d)

where E denotes the expectation value This is true for most scrambling codes used in cellular standards.

Prior Art Parametric GRake Equations

The parametric GRake method of today relies on the properties (A9a-d) of the scrambling code when estimating R_(u). The covariance E(z_(x1,y1) ^(a)(f₁)z*_(x2,y2) ^(b)(f₂)) where x1,y1,x2,y2ε{c,ed}, is now computed, i.e. the covariance of the first two impairment terms in (A4). An average over the codes and the symbols is taken, assuming random symbols and noise.

The covariance of expression (A5), i.e. the self interference covariance, becomes as shown in expression (A10) below.

The covariance of expression (A6), i.e. the inter-code interference covariance, becomes as shown in expression (A11) below.

By introducing the notation:

$\begin{matrix} {{R_{ran}\left( {f_{1},f_{2}} \right)} = {\sum\limits_{\underset{m \neq n}{m = {- \infty}}}^{\infty}{{h^{a}\left( {f_{1} + {mT}} \right)}{n^{b^{*}}\left( {f_{2} + {mT}} \right)}}}} & ({A12}) \end{matrix}$

both covariances becomes:

r _(c,c) ^(a,b)(f ₁ ,f ₂)=r _(c,ed) ^(a,b)(f ₁ ,f ₂)=SF _(c) R _(ran)(f ₁ ,f ₂)  (A13)

and this is generally applicable for all channels.

A covariance R_(c) for a despread DPCCH signal can be expressed as:

R _(c)(f ₁ ,f ₂)=E((r _(c) ^(a)(f ₁)−E(r _(c) ^(a)(f ₁)))(r _(c) ^(b)*(f ₂)−E(r _(c) ^(b)*(f ₂))))  (A14)

which results in:

R _(c)(f ₁ ,f ₂)=SF _(c)(β_(c) ²+β_(ec) ²+β_(ed,sf2) ²+β_(ed,sf4) ²)R _(ran)(f ₁ ,f ₂)+SF _(c) N ₀ R _(n)(f ₂ −f ₁)  (A15)

where N₀ is the noise spectral density and R_(n) represents the covariance between noise of different fingers.

$\begin{matrix} \begin{matrix} {{r_{c,c}^{a,b}\left( {f_{1},f_{2}} \right)} = {{E\left( {z_{c,c}^{a}z_{c,c}^{b^{*}}} \right)} =}} \\ {= {E\left( {\sum\limits_{{n\; 1} = 0}^{{SF}_{c - 1}}{\sum\limits_{\underset{{m\; 1} \neq {n\; 1}}{{m\; 1} = {- \infty}}}^{\infty}{\sum\limits_{{n\; 2} = 0}^{{SF}_{c - 1}}{\sum\limits_{\underset{{m\; 2} \neq {n\; 2}}{{m\; 2} = {- \infty}}}^{\infty}{{h^{a}\left( {{n_{1}T} + f_{1} - {m_{1}T}} \right)}{c_{c}\left( m_{1} \right)}C}}}}} \right.}} \\ {{\left( m_{1} \right){s_{c}\left( \left\lfloor \frac{m_{1}}{{SF}_{c}} \right\rfloor \right)}{c_{c}\left( n_{1} \right)}{C^{*}\left( n_{1} \right)}{h^{b^{*}}\left( {{n_{2}T} + f_{2} - {m_{2}T}} \right)}{c_{c}\left( m_{2} \right)}}} \\ {\left. {{C^{*}\left( m_{2} \right)}{s_{c}^{*}\left( \left\lfloor \frac{m_{2}}{{SF}_{c}} \right\rfloor \right)}{c_{c}\left( n_{2} \right)}{C\left( n_{2} \right)}} \right) =} \\ {= {\sum\limits_{{n\; 1} = 0}^{{SF}_{c - 1}}{\sum\limits_{\underset{{m\; 1} \neq {n\; 1}}{{m\; 1} = {- \infty}}}^{\infty}{\sum\limits_{{n\; 2} = 0}^{{SF}_{c - 1}}{\sum\limits_{\underset{{m\; 2} \neq {n\; 2}}{{m\; 2} = {- \infty}}}^{\infty}{{h^{a}\left( {{n_{1}T} + f_{1} - {m_{1}T}} \right)}h^{b^{*}}}}}}}} \\ {{\left( {{n_{2}T} + f_{2} - {m_{2}T}} \right){\delta \left( {m_{1} - m_{2}} \right)}{\delta \left( {n_{1} - n_{2}} \right)}\left( \left\lfloor \frac{m_{1}}{{SF}_{c}} \right\rfloor \right)s_{c}^{*}}} \\ {{\left( \left\lfloor \frac{m_{2}}{{SF}_{c}} \right\rfloor \right) =}} \\ {= {{SF}_{c}{\sum\limits_{\underset{{m \neq n}\;}{m = {- \infty}}}^{\infty}{{h^{a}\left( {f_{1} + {mT}} \right)}{h^{b^{*}}\left( {f_{2} + {mT}} \right)}}}}} \end{matrix} & ({A10}) \\ \begin{matrix} {{r_{c,{ed}}^{a,b}\left( {f_{1},f_{2}} \right)} = {{E\left( {z_{c,{ed}}^{a}z_{c,{ed}}^{b^{*}}} \right)} =}} \\ {= {E\left( {\sum\limits_{{n\; 1} = 0}^{{SF}_{c - 1}}{\sum\limits_{\underset{{m\; 1} \neq {n\; 1}}{{m\; 1} = {- \infty}}}^{\infty}{\sum\limits_{{n\; 2} = 0}^{{SF}_{c - 1}}{\sum\limits_{\underset{{m\; 2} \neq {n\; 2}}{{m\; 2} = {- \infty}}}^{\infty}{{h^{a}\left( {{n_{1}T} + f_{1} - {m_{1}T}} \right)}{c_{ed}\left( m_{1} \right)}}}}}} \right.}} \\ {{{C\left( m_{1} \right)}{s_{ed}\left( \left\lfloor \frac{m_{1}}{{SF}_{ed}} \right\rfloor \right)}{c_{c}\left( n_{1} \right)}{C^{*}\left( n_{1} \right)}{h^{b^{*}}\left( {{n_{2}T} + f_{2} - {m_{2}T}} \right)}}} \\ {\left. {{c_{ed}\left( m_{2} \right)}{C^{*}\left( m_{2} \right)}{s_{ed}^{*}\left( \left\lfloor \frac{m_{2}}{{SF}_{ed}} \right\rfloor \right)}{c_{c}\left( n_{2} \right)}{C\left( n_{2} \right)}} \right) =} \\ {= {\sum\limits_{{n\; 1} = 0}^{{SF}_{c - 1}}{\sum\limits_{\underset{{m\; 1} \neq {n\; 1}}{{m\; 1} = {- \infty}}}^{\infty}{\sum\limits_{{n\; 2} = 0}^{{SF}_{c - 1}}{\sum\limits_{\underset{{m\; 2} \neq {n\; 2}}{{m\; 2} = {- \infty}}}^{\infty}{{h^{a}\left( {{n_{1}T} + f_{1} - {m_{1}T}} \right)}h^{b^{*}}}}}}}} \\ {{\left( {{n_{2}T} + f_{2} - {m_{2}T}} \right){\delta \left( {m_{1} - m_{2}} \right)}{\delta \left( {n_{1} - n_{2}} \right)}s_{ed}}} \\ {{{\left( \left\lfloor \frac{m_{1}}{{SF}_{ed}} \right\rfloor \right){s_{ed}^{*}\left( \left\lfloor \frac{m_{2}}{{SF}_{ed}} \right\rfloor \right)}} =}} \\ {= {{SF}_{c}{\sum\limits_{\underset{{m \neq 0}\;}{m = {- \infty}}}^{\infty}{{h^{a}\left( {f_{1} + {mT}} \right)}{h^{b^{*}}\left( {f_{2} + {mT}} \right)}}}}} \end{matrix} & ({A11}) \end{matrix}$

Scrambling Code Systematic Colouring Properties

As discussed further above (10a-b), the UL scrambling codes have the further properties of:

C(2m)² C(2m+1)²*=−4

C(2m+1)² C(2m)²*=−4  (A16a-b)

These properties will change the parametric GRake equations to be used.

Modified Parametric GRake Equations

According to the modified GRake equations, the covariance E(z_(x1,y1) ^(a)(f₁)z*_(x2,y2) ^(b)(f₂)) where x1,y1,x2,y2ε{c,ed}, i.e. the covariance of the first two impairment terms in (A4) is computed, also using the newly discovered scrambling code properties (A14a-b).

The covariance of expression (A5) then becomes as shown in expression (A17) below.

The product of the four channelization codes sum that appear in the middle step becomes:

$\begin{matrix} {{\sum\limits_{n = 0}^{{{SFc}/2} - 1}{{c_{ed}\left( {2n} \right)}{c_{c}\left( {2n} \right)}{c_{ed}\left( {{2n} + 1} \right)}{c_{c}\left( {{2n} + 1} \right)}{s_{ed}\left( \left\lfloor \frac{2n}{{SF}_{ed}} \right\rfloor \right)}{s_{c}^{*}\left( \left\lfloor \frac{{2n} + 1}{{SF}_{ed}} \right\rfloor \right)}}} = {{SF}_{c}/2}} & ({A18}) \end{matrix}$

The covariance of expression (A6) then similarly becomes as shown in expression (A19) below.

$\begin{matrix} \begin{matrix} {{r_{c,c}^{a,b}\left( {f_{1},f_{2}} \right)} = {E\left( {z_{c,c}^{a}z_{c,c}^{b^{*}}} \right)}} \\ {= {E\left( {\sum\limits_{{n\; 1} = 0}^{{SF}_{c - 1}}{\sum\limits_{\underset{{m\; 1} \neq {n\; 1}}{{m\; 1} = {- \infty}}}^{\infty}{\sum\limits_{{n\; 2} = 0}^{{SF}_{c - 1}}{\sum\limits_{\underset{{m\; 2} \neq {n\; 2}}{{m\; 2} = {- \infty}}}^{\infty}{{h^{a}\left( {{n_{1}T} + f_{1} - {m_{1}T}} \right)}{c_{c}\left( m_{1} \right)}}}}}} \right.}} \\ {{{C\left( m_{1} \right)}{s_{c}\left( \left\lfloor \frac{m_{1}}{{SF}_{c}} \right\rfloor \right)}{c_{c}\left( n_{1} \right)}{C^{*}\left( n_{1} \right)}{h^{b^{*}}\left( {{n_{2}T} + f_{2} - {m_{2}T}} \right)}c_{c}}} \\ {\left. {\left( m_{2} \right){C^{*}\left( m_{2} \right)}{s_{c}^{*}\left( \left\lfloor \frac{m_{2}}{{SF}_{c}} \right\rfloor \right)}{c_{c}\left( n_{2} \right)}{C\left( n_{2} \right)}} \right) =} \end{matrix} & ({A17}) \\ \begin{matrix} {\mspace{121mu} {= {\sum\limits_{{n\; 1} = 0}^{{SF}_{c - 1}}{\sum\limits_{\underset{{m\; 1} \neq {n\; 1}}{{m\; 1} = {- \infty}}}^{\infty}{\sum\limits_{{n\; 2} = 0}^{{SF}_{c - 1}}{\sum\limits_{\underset{{m\; 2} \neq {n\; 2}}{{m\; 2} = {- \infty}}}^{\infty}{{h^{a}\left( {{n_{1}T} + f_{1} - {m_{1}T}} \right)}h^{b^{*}}}}}}}}} \\ {{\left( {{n_{2}T} + f_{2} - {m_{2}T}} \right){\delta \left( {m_{1} - m_{2}} \right)}{\delta \left( {n_{1} - n_{2}} \right)}{s_{c}\left( \left\lfloor \frac{m_{1}}{{SF}_{c}} \right\rfloor \right)}s_{c}^{*}}} \\ {{\left( \left\lfloor \frac{m_{2}}{{SF}_{c}} \right\rfloor \right) + {{- {h^{a}\left( {f_{1} + T} \right)}}{h^{b^{*}}\left( {f_{2} - T} \right)}{\sum\limits_{n = 0}^{{SF}_{{c/2} - 1}}{{c_{c}\left( {2n} \right)}{c_{c}\left( {2n} \right)}}}}}} \\ {{{{c_{c}\left( {{2n} + 1} \right)}{c_{c}\left( {{2n} + 1} \right)}{s_{c}\left( \left\lfloor \frac{2n}{{SF}_{c}} \right\rfloor \right)}{s_{c}^{*}\left( \left\lfloor \frac{{2n} + 1}{{SF}_{c}} \right\rfloor \right)}} + {- h^{a}}}} \end{matrix} & \; \\ \begin{matrix} {{~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}{\left( {f_{1} - T} \right){h^{b^{*}}\left( {f_{2} + T} \right)}{\sum\limits_{n = 0}^{{SF}_{{c/2} - 1}}{{c_{c}\left( {{2n} + 1} \right)}{c_{c}\left( {{2n} + 1} \right)}}}}} \\ {{{{c_{c}\left( {2n} \right)}{c_{c}\left( {2n} \right)}{s_{c}\left( \left\lfloor \frac{{2n} + 1}{{SF}_{c}} \right\rfloor \right)}{s_{c}^{*}\left( \left\lfloor \frac{2n}{{SF}_{c}} \right\rfloor \right)}} =}} \\ {= {{{SF}_{c}{\sum\limits_{\underset{m \neq 0}{m = {- \infty}}}^{\infty}{{h^{a}\left( {f_{1} + {mT}} \right)}{h^{b^{*}}\left( {f_{2} + {mT}} \right)}}}} - {{h^{a}\left( {f_{1} + T} \right)}h^{b^{*}}}}} \\ {{{\left( {f_{2} - T} \right){{SF}_{c}/2}} - {{h^{a}\left( {f_{1} - T} \right)}{h^{b^{*}}\left( {f_{1} - T} \right)}{h^{b^{*}}\left( {f_{2} + T} \right)}}}} \\ {{{SF}_{c}/2}} \end{matrix} & \; \\ \begin{matrix} {{r_{c,{ed}}^{a,b}\left( {f_{1},f_{2}} \right)} = {{E\left( {z_{c,{ed}}^{a}z_{c,{ed}}^{b^{*}}} \right)} =}} \\ {= {E\left( {\sum\limits_{{n\; 1} = 0}^{{SF}_{c - 1}}{\sum\limits_{\underset{{m\; 1} \neq {n\; 1}}{{m\; 1} = {- \infty}}}^{\infty}{\sum\limits_{{n\; 2} = 0}^{{SF}_{c - 1}}{\sum\limits_{\underset{{m\; 2} \neq {n\; 2}}{{m\; 2} = {- \infty}}}^{\infty}{{h^{a}\left( {{n_{1}T} + f_{1} - {m_{1}T}} \right)}{c_{ed}\left( m_{1} \right)}}}}}} \right.}} \\ {{{C\left( m_{1} \right)}{s_{ed}\left( \left\lfloor \frac{m_{1}}{{SF}_{ed}} \right\rfloor \right)}{c_{c}\left( n_{1} \right)}{C^{*}\left( n_{1} \right)}{h^{b^{*}}\left( {{n_{2}T} + f_{2} - {m_{2}T}} \right)}}} \\ {\left. {{c_{ed}\left( m_{2} \right)}{C^{*}\left( m_{2} \right)}{s_{ed}^{*}\left( \left\lfloor \frac{m_{2}}{{SF}_{ed}} \right\rfloor \right)}{c_{c}\left( n_{2} \right)}{C\left( n_{2} \right)}} \right) =} \end{matrix} & ({A19}) \\ \begin{matrix} {\mspace{121mu} {= {\sum\limits_{{n\; 1} = 0}^{{SF}_{c - 1}}{\sum\limits_{\underset{{m\; 1} \neq {n\; 1}}{{m\; 1} = {- \infty}}}^{\infty}{\sum\limits_{{n\; 2} = 0}^{{SF}_{c - 1}}{\sum\limits_{\underset{{m\; 2} \neq {n\; 2}}{{m\; 2} = {- \infty}}}^{\infty}{{h^{a}\left( {{n_{1}T} + f_{1} - {m_{1}T}} \right)}h^{b^{*}}}}}}}}} \\ {{\left( {{n_{2}T} + f_{2} - {m_{2}T}} \right){\delta \left( {m_{1} - m_{2}} \right)}{\delta \left( {n_{1} - n_{2}} \right)}{s_{ed}\left( \left\lfloor \frac{m\; 1}{{SF}_{ed}} \right\rfloor \right)}s_{ed}^{*}}} \\ {{\left( \left\lfloor \frac{m\; 2}{{SF}_{ed}} \right\rfloor \right) + {{- {{ha}^{a}\left( {f_{1} + T} \right)}}{h^{b^{*}}\left( {f_{2} - T} \right)}{\sum\limits_{n\; = 0}^{{SF}_{{c/2} - 1}}{{c_{ed}\left( {2n} \right)}c_{c}}}}}} \\ {{{\left( {2n} \right){c_{ed}\left( {{2n} + 1} \right)}{c_{c}\left( {{2n} + 1} \right)}{s_{ed}\left( \left\lfloor \frac{2n}{{SF}_{ed}} \right\rfloor \right)}{s_{ed}^{*}\left( \left\lfloor \frac{{2n} + 1}{{SF}_{ed}} \right\rfloor \right)}} +}} \end{matrix} & \; \\ \begin{matrix} {{~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}{{- {h^{a}\left( {f_{1} - T} \right)}}{h^{b^{*}}\left( {f_{2} - T} \right)}{\sum\limits_{n = 0}^{{SF}_{{c/2} - 1}}{{c_{ed}\left( {{2n} + 1} \right)}{c_{c}\left( {{2n} + 1} \right)}}}}} \\ {{{{c_{ed}\left( {2n} \right)}{c_{c}\left( {2n} \right)}{s_{ed}\left( \left\lfloor \frac{{2n} + 1}{{SF}_{ed}} \right\rfloor \right)}{s_{ed}^{*}\left( \left\lfloor \frac{2n}{{SF}_{ed}} \right\rfloor \right)}} =}} \\ {= {{{SF}_{c}{\sum\limits_{\underset{m \neq 0}{m = {- \infty}}}^{\infty}{{h^{a}\left( {f_{1} + {mT}} \right)}{h^{b^{*}}\left( {f_{2} + {mT}} \right)}}}} - {{h^{a}\left( {f_{1} + T} \right)}h^{b^{*}}}}} \\ {{{\left( {f_{2} - T} \right){{SF}_{c}/2}} - {{h^{a}\left( {f_{1} - T} \right)}{h^{b^{*}}\left( {f_{2} + T} \right)}{{SF}_{c}/2}}}} \end{matrix} & \; \end{matrix}$

The two terms containing a “sum of product of 4 channelization codes” that appear in the middle step can be evaluated using the fact that the signal term s_(ed) is constant over intervals n=k*SF_(c), . . . , k*SF_(c)−2, for k=0, . . . , SF_(c)/SF_(ed)−1 intervals. Furthermore for SF2 c(n)=[1 −1 1 −1, . . . ] and for SF4 c(n)=[1 1 −1 −1 1 1 −1 −1 . . . ]. The channelization code sum over these intervals of constant S_(ed) then becomes:

$\begin{matrix} {{\sum\limits_{n = 0}^{{{SFc}/2} - 1}{{c_{c}\left( {2n} \right)}{c_{c}\left( {2n} \right)}{c_{c}\left( {{2n} + 1} \right)}{c_{c}\left( {{2n} + 1} \right)}{s_{c}\left( \left\lfloor \frac{2n}{{SF}_{c}} \right\rfloor \right)}{s_{c}^{*}\left( \left\lfloor \frac{{2n} + 1}{{SF}_{c}} \right\rfloor \right)}}} = {{SF}_{c}/2}} & ({A20}) \end{matrix}$

If SF_(ed)=2, then the expression becomes:

$\begin{matrix} {{\sum\limits_{n = 0}^{{{SFc}/2} - 1}{{c_{ed}\left( {2n} \right)}{c_{c}\left( {2n} \right)}{c_{ed}\left( {{2n} + 1} \right)}{c_{c}\left( {{2n} + 1} \right)}{s_{ed}\left( \left\lfloor \frac{2n}{{SF}_{ed}} \right\rfloor \right)}{s_{ed}^{*}\left( \left\lfloor \frac{{2n} + 1}{{SF}_{ed}} \right\rfloor \right)}}} = {{- {SF}_{c}}/2}} & ({A21}) \end{matrix}$

The second channelizaton code sum in (A17) can be verified to be identical to the first given by (A18) or (A19).

The cross terms E(z_(x1,y1) ^(a)(f₁)z_(x2,y2) ^(b)*(f₂)) have zero expected value if x₁≠x₂, y₁≠y₂.

Let us introduce the notation:

R _(ul)(f ₁ ,f ₂)=h ^(a)(f ₁ +T)h ^(b)*(f ₂ −T)+h ^(a)(f ₁ −T)h ^(b)*(f ₂ +T)  (A22)

Note that the new covariance modification R_(ul) shows that there exists a strong correlation between despread data one chip before and one chip after a strong energy finger.

The covariance R_(c) for a despread DPCCH signal (A14) can be expressed as:

$\begin{matrix} {{R_{c}\left( {f_{1},f_{2}} \right)} = {{{{SF}_{c}\left( {\beta_{c}^{2} + \beta_{ec}^{2} + \beta_{{ed},{{sf}\; 2}}^{2} + \beta_{{ed},{{sf}\; 4}}^{2}} \right)}{R_{ran}\left( {f_{1},f_{2}} \right)}} + {{{SF}_{c}N_{0}{R_{n}\left( {f_{2} - f_{1}} \right)}} \pm {{{SF}_{c}\left( {{0.5\beta_{c}^{2}} + {0.5\beta_{ec}^{2}} - {0.5\beta_{{ed},{{sf}\; 2}}^{2}} + {0.5\beta_{{{ed}.{sf}}\; 4}^{2}}} \right)}{R_{ul}\left( {f_{1},f_{2}} \right)}}}}} & ({A23}) \end{matrix}$

If 2SF2+2SF4 is used in combination in the DPCCH channel then, since β_(ed,sf2) ²=2β_(ed,sf4) ², this simplifies to:

$\begin{matrix} {{R_{c}\left( {f_{1},f_{2}} \right)} = {{{{SF}_{c}\left( {\beta_{c}^{2} + \beta_{ec}^{2} + {{3/2}\beta_{{{ed},{{sf}\; 2}}\;}^{2}}} \right)}{R_{ran}\left( {f_{1},f_{2}} \right)}} + {{SF}_{c}N_{0}{R_{n}\left( {f_{2\;} - f_{1}} \right)}} - {{{SF}_{c}\left( {{0.5\beta_{c}^{2}} + {0.5\beta_{ec}^{2}} - {0.25\beta_{{ed},{{sf}\; 2}}^{2}}} \right)}{R_{ul}\left( {f_{1},f_{2}} \right)}}}} & ({A24}) \end{matrix}$

If only SF4 is used, the expression becomes:

$\begin{matrix} {{R_{c}\left( {f_{1},f_{2}} \right)} = {{{{SF}_{c}\left( {\beta_{c}^{2} + \beta_{ec}^{2} + \beta_{{ed},{{sf}\; 4}}^{2}} \right)}{R_{ran}\left( {f_{1},f_{2}} \right)}} + {{SF}_{c}N_{0}{R_{n}\left( {f_{2\;} - f_{1}} \right)}} - {{{SF}_{c}\left( {{0.5\beta_{c}^{2}} + {0.5\beta_{ec}^{2}} + {0.5\beta_{{ed},{{sf}\; 2}}^{2}}} \right)}{R_{ul}\left( {f_{1},f_{2}} \right)}}}} & ({A25}) \end{matrix}$

Finally if only 2×SF2 is used, then:

$\begin{matrix} {{R_{c}\left( {f_{1},f_{2}} \right)} = {{{{SF}_{c}\left( {\beta_{c}^{2} + \beta_{ec}^{2} + \beta_{{ed},{{sf}\; 4}}^{2}} \right)}{R_{ran}\left( {f_{1},f_{2}} \right)}} + {{SF}_{c}N_{0}{R_{n}\left( {f_{2\;} - f_{1}} \right)}} - {{{SF}_{c}\left( {{0.5\beta_{c}^{2}} + {0.5\beta_{ec}^{2}} - {0.5\beta_{{ed},{{sf}\; 2}}^{2}}} \right)}{R_{ul}\left( {f_{1},f_{2}} \right)}}}} & ({A26}) \end{matrix}$

Comparing these expressions to the parametric GRake equations we note one complication. With only the first term present as in today's implementation we can write:

$\begin{matrix} {{R_{isi} = {{SF}_{c}{\sum\limits_{\underset{m \neq 0}{m = {- \infty}}}^{\infty}{{h^{a}\left( {f + {mT}} \right)}{h^{b*}\left( {f + {mT}} \right)}}}}}{R_{e} = {{SF}_{c}R_{n}}}{R_{c} = {{E_{T}R_{isi}} + {N_{0}R_{e}}}}} & ({A27}) \end{matrix}$

and then solve for the total energy E_(T) and noise power N₀ using a sample estimate of R_(c) in the left-hand-side. R_(e) is a scaled version of the covariance between noise of different fingers.

For the case of only SF4 in the DPCCH channel we can re-use the GRake equations with modification:

R _(isi,SF4) =SF _(c)(R _(ran)−0.5R _(ul))

R _(e) =SF _(c) R _(n)

R _(c,SF4) =E _(T) R _(isi,SF4) +N ₀ R _(e)  (A28)

However when SF2 is involved such simplifications are not possible since the scalar energy factors, i.e. the beta factors before R_(ran) and R_(ul) are not identical. Rewriting (A24) and (A26) in the form (A27) would require a new factor in front of R_(ul), this factor being a function of beta factors. However, when SF2 is used, the majority of the power lies in the E-DPDCH, so that we can make the approximation for the case 2×SF2:

R _(isi,2SF2) =SF _(c)(R _(ran)+0.5R _(ul))

R _(e) =SF _(c) R _(n)

R _(c,2SF2) =E _(T) R _(isi,SF2) +N ₀ R _(e)  (A29)

And for 2×SF2+2×SF4:

R _(isi,2SF2+2SF4) =SF _(c)(R _(ran)+1/6R _(ul))

R _(e) =SF _(c) R _(n)

R _(c,2SF2+2SF4) =E _(T) R _(isi,SF2+SF4) +N ₀ R _(e)  (A30)

Modified GRake Weight Calculation for Data Channels

To compute the impairment matrix (and the associated weights) applicable to the E-DPDCH channel, the order in the previous section is basically reversed and the E-DPDCH is let to take the role of DPCCH. Once the impairment matrix has been determined a modified version of (A8) can be used to determine data signal estimates. It is assumed that E_(T) and N₀ has been estimated using the results of any of (A28)-(A30), whichever is applicable. First look at despreading of an E-DPDCH channel using SF4. The general case becomes:

$\begin{matrix} {{R_{{SF}\; 4}\left( {f_{1},f_{2}} \right)} = {{{{SF}_{4}\left( {\beta_{c}^{2} + \beta_{ec}^{2} + \beta_{{ed},{{sf}\; 2}}^{2} + \beta_{{ed},{{sf}\; 4}}^{2}} \right)}{R_{ran}\left( {f_{1},f_{2}} \right)}} + {{SF}_{4}N_{0}{R_{n}\left( {f_{2} - f_{1}} \right)}} + {{- {{SF}_{4}\left( {{0.5\beta_{c}^{2}} + {0.5\beta_{ec}^{2}} - {0.5\beta_{{ed},{{sf}\; 2}}^{2}} + {0.5\beta_{{ed},{{sf}\; 4}}^{2}}} \right)}}{R_{ul}\left( {f_{1},f_{2}} \right)}}}} & ({A31}) \end{matrix}$

If 2SF2+2SF4 is used in combination then, since β_(ed,sf2) ²=2β_(ed,sf4) ²,this simplifies to:

$\begin{matrix} {{R_{{{SF}\; 4},{{2{SF}\; 2} + {2{SF}\; 4}}}\left( {f_{1},f_{2}} \right)} = {{{{{SF}_{4}\left( {\beta_{c}^{2} + \beta_{ec}^{2} + {{3/2}\beta_{{ed},{{sf}\; 2}}^{2}}} \right)}{R_{ran}\left( {f_{1},f_{2}} \right)}} + {{SF}_{4}N_{0}{R_{n}\left( {f_{2} - f_{1}} \right)}} + {{- {{SF}_{4}\left( {{0.5\beta_{c}^{2}} + {0.5\beta_{ec}^{2}} - {0.25\beta_{{ed},{{sf}\; 2}}^{2}}} \right)}}{R_{ul}\left( {f_{1},f_{2}} \right)}}} \approx {{{SF}_{4}/{SF}_{c}}R_{c,{{2{SF}\; 2} + {2{SF}\; 4}}}}}} & ({A32}) \end{matrix}$

where the last matrix is taken from (A30). If only SF4 is used, the expression becomes:

$\begin{matrix} \begin{matrix} {{R_{{{SF}\; 4},{{SF}\; 4}}\left( {f_{1},f_{2}} \right)} = {{{{SF}_{4}\left( {\beta_{c}^{2} + \beta_{ec}^{2} + \beta_{{ed},{{sf}\; 4}}^{2}} \right)}{R_{ran}\left( {f_{1},f_{2}} \right)}} +}} \\ {{{{SF}_{4}N_{0}{R_{n}\left( {f_{2} - f_{1}} \right)}} +}} \\ {{{- {{SF}_{4}\left( {{0.5\beta_{c}^{2}} + {0.5\beta_{ec}^{2}} + {0.5\beta_{{ed},{{sf}\; 4}}^{2}}} \right)}}{R_{ul}\left( {f_{1},f_{2}} \right)}}} \\ {= {{{SF}_{4}/{SF}_{c}}R_{c,{{SF}\; 4}}}} \end{matrix} & ({A33}) \end{matrix}$

where the last matrix is taken from (A28). Note that the impairment matrix is obtained as a scaled variant of the impairment matrix seen from the DPCCH despreading.

Next despreading SF2 is considered.

$\begin{matrix} {{R_{{SF}\; 2}\left( {f_{1},f_{2}} \right)} = {{{{SF}_{2}\left( {\beta_{c}^{2} + \beta_{ec}^{2} + \beta_{{ed},{{sf}\; 2}}^{2} + \beta_{{ed},{{sf}\; 4}}^{2}} \right)}{R_{ran}\left( {f_{1},f_{2}} \right)}} + {{SF}_{2}N_{0}{R_{n}\left( {f_{2} - f_{1}} \right)}} + {{- {{SF}_{2}\left( {{0.5\beta_{{ed},{{sf}\; 2}}^{2}} + {0.5\beta_{c}^{2}} + {0.5\beta_{ec}^{2}} - {0.5\beta_{{ed},{{sf}\; 4}}^{2}}} \right)}}{R_{ul}\left( {f_{1},f_{2}} \right)}}}} & ({A34}) \end{matrix}$

Note the sign changes of β_(ed,sf2) ² and β_(ed,sf4) ² compared to DPCCH despreading. If 2SF2+2SF4 is used in combination then, since β_(ed,sf2) ²=2β_(ed,sf4) ²,this simplifies to:

$\begin{matrix} {{R_{{{SF}\; 2},{{{SF}\; 2} + {{SF}\; 4}}}\left( {f_{1},f_{2}} \right)} = {{{{{SF}_{2}\left( {\beta_{c}^{2} + \beta_{ec}^{2} + {{3/2}\beta_{{ed},{{sf}\; 2}}^{2}}} \right)}{R_{ran}\left( {f_{1},f_{2}} \right)}} + {{SF}_{2}N_{0}{R_{n}\left( {f_{2} - f_{1}} \right)}} + {{- {{SF}_{2}\left( {{0.25\beta_{{ed},{{sf}\; 2}}^{2}} + {0.5\beta_{c}^{2}} + {0.5\beta_{ec}^{2}}} \right)}}{R_{ul}\left( {f_{1},f_{2}} \right)}}} \approx {{{SF}_{2}*E_{T}{R_{ran}\left( {f_{1},f_{2}} \right)}} + {{SF}_{2}N_{0}{R_{n}\left( {f_{2} - f_{1\;}} \right)}} - {{SF}_{2}{E_{T}/6}{R_{ul}\left( {f_{1},f_{2}} \right)}}}}} & ({A35}) \end{matrix}$

If only 2×SF2 is used, then:

$\begin{matrix} {{R_{{{SF}\; 2},{2{SF}\; 2}}\left( {f_{1},f_{2}} \right)} = {{{{{SF}_{2}\left( {\beta_{c}^{2} + \beta_{ec}^{2} + \beta_{{ed},{{sf}\; 2}}^{2}} \right)}{R_{ran}\left( {f_{1},f_{2}} \right)}} + {{SF}_{2}N_{0}{R_{n}\left( {f_{2} - f_{1}} \right)}} + {{- {{SF}_{2}\left( {{0.5\beta_{c}^{2}} + {0.5\beta_{ec}^{2}} + {0.5\beta_{{ed},{{sf}\; 2}}^{2}}} \right)}}{R_{ul}\left( {f_{1},f_{2}} \right)}}} \approx {{{SF}_{2}*E_{T}{R_{ran}\left( {f_{1},f_{2}} \right)}} + {{SF}_{2}N_{0}{R_{n}\left( {f_{2} - f_{1\;}} \right)}} - {{SF}_{2}{E_{T}/2}{R_{ul}\left( {f_{1},f_{2}} \right)}}}}} & ({A36}) \end{matrix}$

While despreading SF4 could rely directly on the impairment matrix calculated for the DPCCH, despreading SF2 apparently required some recalculations. The approach is to use the estimated total energy and noise power from (A29) or (A30) and plug that into equations (A35) and (A36).

APPENDIX B GRake with Use of Unused Channelization Codes Signal Model

Let c_(t) be the Orthogonal Variable Spreading Factor (OVSF) code used on the sent data and c_(r) the OVSF code used in the receiver. The OVSF code sequences re extended to be periodic. Let

$\left( \left\lfloor \frac{m}{{SF}_{c_{t}}} \right\rfloor \right)$

denote sent data, at each chip. This symbol is thus constant during a complete sent OVSF sequence. The sent scrambled data with a particular OVSF code c_(t) can be written:

${x(m)} = {{c_{t}(m)}{C(m)}{{s\left( \left\lfloor \frac{m}{{SF}_{c_{t}}} \right\rfloor \right)}.}}$

(B1)

The data is sent over an air channel with delay taps {h_(f)}.

Descrambling with the same scrambling code and despreading the received signal with OVSF code c yields an observation at each finger location f:

$\begin{matrix} \begin{matrix} {{r_{c_{r}}(f)} = {{{h(f)}\frac{1}{{SF}_{cr}}{\sum\limits_{i = 0}^{{SF}_{cr} - 1}{{C^{*}(i)}{c_{r}(m)}{x\left( {i + f} \right)}}}} + {e(f)}}} \\ {= {{{h(f)}s_{0}\delta_{c_{t},c_{r}}} + {{e(f)}.}}} \end{matrix} & ({B2}) \end{matrix}$

Where δ_(c) _(t) _(,c) _(r) if the codes c_(t) and c_(r) are the same and 0 otherwise, and s₀ is the data symbol to detect in case of matching channelization codes.

An optimal estimator ŝ_(c)(0) of the desired signal would take the form:

ŝ _(c)(0)=SF _(c) _(r) β_(c) _(r) h*R _(u) ⁻¹ r _(c) _(r) ,  (B3)

Here R_(u) is the covariance matrix of the impairment term in (B2).

Without loss of generality it is assumed that the scrambling sequence C(m) starts at 0. In practice it will start at an even offset. The impairment can be written:

$\begin{matrix} {{e\left( f_{1} \right)} = {\frac{1}{{SF}_{c_{r}}}{\sum\limits_{k}^{\;}\; {{h(k)}\left( {1 - {\delta_{c_{t},c_{r}}\delta_{k,f_{1}}}} \right)\left( {\sum\limits_{i = 0}^{{SF}_{c_{r}} - 1}\; {{C^{*}(i)}{c_{r}(i)}{x\left( {i + f_{1} - k} \right)}}} \right)}}}} & \left( {B\; 4} \right) \end{matrix}$

To compute the product the following index is used on the other term:

$\begin{matrix} {{e\left( f_{2} \right)} = {\frac{1}{{SF}_{c_{r}}}{\sum\limits_{l}^{\;}\; {{h(l)}\left( {1 - {\delta_{c_{t},c_{r}}\delta_{k,f_{2}}}} \right)\left( {\sum\limits_{j = 0}^{{SF}_{c_{r}} - 1}\; {{C^{*}(j)}{c_{r}(j)}{x\left( {j + f_{2} - l} \right)}}} \right)}}}} & \left( {B\; 5} \right) \end{matrix}$

If the same channelization code and the scrambling codes match, then there is energy used to detect the symbol. Thus the product becomes:

$\begin{matrix} {{{e\left( f_{1} \right)}{e^{*}\left( f_{2} \right)}} = {{\frac{1}{{SF}_{c_{r}}^{2}}{\sum\limits_{\underset{i,j}{k,l}}^{\;}\; {{h(k)}{h^{*}(l)}\; {C^{*}(i)}{c_{r}(i)}{x\left( {i + f_{1} - k} \right)}{C(j)}{c_{r}(j)}{x^{*}\left( {j + f_{2} - l} \right)}\left( {1 - {\delta_{c_{r},c_{t}}\delta_{k,f_{1}}}} \right)\left( {1 - {\delta_{c_{r},c_{t}}\delta_{l,f_{2}}}} \right)}}} = {\frac{1}{{SF}_{c_{r}}^{2}}{\sum\limits_{\underset{i,j}{k,l}}^{\;}{{h(k)}{h^{*}(l)}\; {C^{*}(i)}{c_{r}(i)}{C\left( {i + f_{1} - k} \right)}{c_{t}\left( {i + f_{1} - k} \right)}{s\left( \left\lfloor \frac{i + f_{1} - k}{{SF}_{c_{t}}} \right\rfloor \right)}{C(j)}{c_{r}(j)}{C^{*}\left( {j + f_{2} - l} \right)}{c_{t}\left( {j + f_{2} - l} \right)}{s\left( \left\lfloor \frac{j + f_{2} - l}{{SF}_{c_{t}}} \right\rfloor \right)}\left( {1 - {\delta_{c_{r},c_{t}}\delta_{k,f_{1}}}} \right)\left( {1 - {\delta_{c_{r},c_{t}}\delta_{k,f_{2}}}} \right)}}}}} & \left( {B\; 6} \right) \end{matrix}$

According to the classical impairment assumptions, the only non-vanishing correlation is:

E(C*(i)C(i+f ₁ −k)C(j)C*(j+f ₂ −l))=1 for i=j,l=k+f ₂ −f ₁  (B7)

The expectation value E here is actually taken over all scrambling code offsets (always even). This gives:

$\begin{matrix} {{{E\left( {{e\left( f_{1} \right)}{e^{*}\left( f_{2} \right)}} \right)}{SF}_{c_{c}}^{2}} = {{{SF}_{c_{r}}{\sum\limits_{k}^{\;}\; {{h(k)}{h^{*}\left( {k + f_{2} - f_{1}} \right)}\left( {1 - {\delta_{c_{r},c_{t}}\delta_{k,f_{1}}}} \right)\beta_{s}^{2}}}}=={{{SF}_{c_{r}}\left( {{\sum\limits_{k}^{\;}\; {{h(k)}{h^{*}\left( {k + f_{2} - f_{1}} \right)}}} - {{h\left( f_{1} \right)}{h^{*}\left( f_{2} \right)}\delta_{c_{r},c_{t}}}} \right)}\beta_{s}^{2}}}} & \left( {B\; 8} \right) \end{matrix}$

A covariance matrix R_(u) according to the classical impairment assumptions can thus be expressed as:

$\begin{matrix} {R_{u} = {\frac{1}{SF}\left( {R_{y} - {\sigma_{x}^{2}{hh}^{H}}} \right)}} & \left( {B\; 9} \right) \end{matrix}$

where

$\begin{matrix} {{R_{y}\left( {f_{1},f_{2}} \right)} = {\frac{1}{2\; {SF}_{c_{c}}}{\sum\limits_{i}^{\;}\; {\left( {{\sum\limits_{k}^{\;}{{h(k)}{h^{*}\left( {k + f_{2} - f_{1}} \right)}}} - {{h\left( f_{1} \right)}{h^{*}\left( f_{2} \right)}\delta_{c_{r},c_{t}}}} \right){\beta (i)}^{2}}}}} & \left( {B\; 10} \right) \end{matrix}$

According to the newly discovered impairment assumptions, the non-vanishing correlations are:

$\begin{matrix} {{E\left( {{C^{*}(i)}{C\left( {i + f_{1} - k} \right)}{C(j)}{C^{*}\left( {j + f_{2} - l} \right)}} \right)} = \left\{ \begin{matrix} 1 & {{i = j},{l = {k + f_{2} - f_{1}}}} \\ {{- 1},} & {{i = {j + 1}},{i = 0},2,4,\ldots \mspace{14mu},} \\ \; & {{k = {f_{1} - 1}},{l = {f_{2} + 1}}} \\ {{- 1},} & {{i = {j - 1}},{i = 0},2,4,\ldots \mspace{14mu},} \\ \; & {{k = {f_{1} + 1}},{l = {f_{2} - 1}}} \end{matrix} \right.} & \left( {B\; 11} \right) \end{matrix}$

The first term above is the classical impairment. Using this renders in:

$\begin{matrix} {{{E\left( {{e\left( f_{1} \right)}{e^{*}\left( f_{2} \right)}} \right)}{SF}_{c_{c}}^{2}} = {{{SF}_{c_{c}}{\sum\limits_{k}^{\;}\; {{h(k)}{h^{*}\left( {k + f_{2} - f_{1}} \right)}\left( {1 - {\delta_{c_{r},c_{t}}\delta_{k,f_{1}}}} \right)\beta_{s}^{2}}}} + \mspace{25mu} {{h\left( {f_{1} + 1} \right)}{h^{*}\left( {f_{2} - 1} \right)}{\sum\limits_{i = 0}^{{SF}_{c_{r}} - 1}\; {{c_{r}\left( {i - 1} \right)}{c_{r}(i)}{c_{t}\left( {i - 1} \right)}{c_{t}(i)}E\left( {\left( {C^{*}(i)} \right)^{2}\left( {C\left( {i - 1} \right)} \right)^{2}{s^{*}\left( \left\lfloor \frac{i}{{SF}_{c_{t}}} \right\rfloor \right)}{s\left( \left\lfloor \frac{i - 1}{{SF}_{c_{t}}} \right\rfloor \right)}} \right)}}} +}} & \left( {B\; 12} \right) \\ { {{{h\left( {f_{1} - 1} \right)}{h^{*}\left( {f_{2} + 1} \right)}{\sum\limits_{i = 0}^{{SF}_{c_{r}} - 1}{{c_{r}(i)}{c_{r}\left( {i + 1} \right)}{c_{t}\left( {i + 1} \right)}{c_{t}(i)}{E\left( {\left( {C^{*}(i)} \right)^{2}\left( {C\left( {i + 1} \right)} \right)^{2}{s^{*}\left( \left\lfloor \frac{i}{{SF}_{c_{t}}} \right\rfloor \right)}{s\left( \left\lfloor \frac{i + 1}{{SF}_{c_{t}}} \right\rfloor \right)}} \right)}}}}=={{{{SF}_{c_{c}}\left( {{\sum\limits_{k}^{\;}\; {{h(k)}{h^{*}\left( {k + f_{2} - f_{1}} \right)}}} - {{h\left( f_{1} \right)}{h^{*}\left( f_{2} \right)}\delta_{c_{r},c_{t}}}} \right)}\beta_{s}^{2}} + {{- {h\left( {f_{1} + 1} \right)}}{h^{*}\left( {f_{2} - 1} \right)}\beta_{s}^{2}{\sum\limits_{k = 0}^{\frac{{SF}_{c_{r}} - 1}{2} - 1}\; {{c_{r}\left( {2\; k} \right)}{c_{r}\left( {{2\; k} + 1} \right)}}}}}}} & \; \\ {\mspace{79mu} {{{c_{t}\left( {2\; k} \right)}{{c_{t}\left( {{2\; k} + 1} \right)}++}{h\left( {f_{1} - 1} \right)}{h^{*}\left( {f_{2} + 1} \right)}\beta_{s}^{2}{\sum\limits_{k = 0}^{\frac{{SF}_{c_{r}} - 1}{2} - 1}{{c_{r}\left( {2\; k} \right)}{c_{r}\left( {{2\; k} + 1} \right)}{c_{t}\left( {2\; k} \right)}{c_{t}\left( {{2\; k} + 1} \right)}}}} = {{{\beta_{s}^{2}{SF}_{c_{c}}{\sum\limits_{k}^{\;}\; {{h(k)}{h^{*}\left( {k + f_{2} - f_{1}} \right)}\left( {1 - {\delta_{c_{r},c_{t}}\delta_{k,f_{1}}}} \right)}}} + {{- {\beta_{s}^{2}\left( {{{h\left( {f_{1} + 1} \right)}{h^{*}\left( {f_{2} - 1} \right)}} + {{h\left( {f_{1} - 1} \right)}{h^{*}\left( {f_{2} + 1} \right)}}} \right)}}\frac{{SF}_{c_{c}}}{2}{sign}\; \left( {c_{r},c_{t}} \right)}}=={{{{SF}_{c_{c}}\left( {{\sum\limits_{k}^{\;}\; {{h(k)}{h^{*}\left( {k + f_{2} - f_{1}} \right)}}} - {{h\left( f_{1} \right)}{h^{*}\left( f_{2} \right)}\delta_{c_{r},c_{t}}}} \right)}\beta_{s}^{2}} + {{- \left( {{{h\left( {f_{1} + 1} \right)}{h^{*}\left( {f_{2} - 1} \right)}} + {{h\left( {f_{1} - 1} \right)}{h^{*}\left( {f_{2} + 1} \right)}}} \right)}\frac{{SF}_{c_{c}}}{2}{sign}\; \left( {c_{r},c_{t}} \right)\beta_{s}^{2}}}}}} & \; \\ {\mspace{76mu} {{where}\text{}{{{sign}\; \left( {c_{r},c_{t}} \right)} = \left\{ \begin{matrix} {1,} & {{the}\mspace{14mu} {codes}\mspace{14mu} {are}\mspace{14mu} {from}\mspace{14mu} {the}\mspace{14mu} {same}\mspace{14mu} {code}\mspace{14mu} {tree}} \\ {{- 1},} & {{the}\mspace{14mu} {codes}\mspace{14mu} {are}\mspace{14mu} {from}\mspace{14mu} {different}\mspace{14mu} {code}\mspace{14mu} {tree}} \end{matrix} \right.}}} & \left( {B\; 13} \right) \end{matrix}$

Thus if the UE is transmitting on several data channels with OVSF codes {c_(t) ^(i)}, and beta factors {β^(i)} and using OVSF code c_(r) in the GRake+ or the unused code to estimate the impairment matrix, then the last term in (B9) becomes the correction term:

$\begin{matrix} {{R_{u}^{corr}\left( {f_{1},f_{2}} \right)} = {{- \left( {{{h\left( {f_{1} + 1} \right)}{h^{*}\left( {f_{2} - 1} \right)}} + {{h\left( {f_{1} - 1} \right)}{h^{*}\left( {f_{2} + 1} \right)}}} \right)}\frac{1}{2{SF}_{c_{r}}}{\sum\limits_{i}^{\;}\; {{sign}\; \left( {c_{r},c_{t}^{i}} \right){\beta^{i^{2}}.}}}}} & \left( {B\; 14} \right) \end{matrix}$

Note that other UE's or noise does not contribute to this term. Here also the fact that the data on different data channels are uncorrelated is used. If other users (MUI) are added, the noise relation (B9) becomes:

$\begin{matrix} {R_{u} = {{\frac{1}{{SF}_{c_{r}}}\left( {R_{y} - {\sigma_{x}^{2}{hh}^{H}}} \right)} + {R_{u}^{corr}.}}} & \left( {B\; 15} \right) \end{matrix}$

Thus if impairment is estimated using a code on the same OVSF sub-tree as the used code on the data being detected the correction is the same, and nothing need to be done, except the scaling with the spreading factor. However, if the codes are from different OVSF branches, then the impairment matrix should be corrected with the double quantity (c_(r) is the OVSF code of the data to be detected):

$\begin{matrix} {{R_{u}^{corr}\left( {f_{1},f_{2}} \right)} = {{- \left( {{{h\left( {f_{1} + 1} \right)}{h^{*}\left( {f_{2} - 1} \right)}} + {{h\left( {f_{1} - 1} \right)}{h^{*}\left( {f_{2} + 1} \right)}}} \right)}\frac{1}{{SF}_{c_{r}}}{\sum\limits_{i}^{\;}\; {{sign}\; \left( {c_{r},c_{t}^{i}} \right){\beta^{i^{2}}.}}}}} & \left( {B\; 16} \right) \end{matrix}$

In a typical High Data Rate (HDR) example, data is sent on 2×SF2+2SF4 and the impairment is estimated using code 13.1. Then there is no need to compensate the impairment when applying the GRake on the SF4 data. However, since SF2 is situated on the other OSVF sub-tree, it needs to be compensated by (neglecting control channels):

$\begin{matrix} {{R_{u}^{corr}\left( {f_{1},f_{2}} \right)} = {{- \left( {{{h\left( {f_{1} + 1} \right)}{h^{*}\left( {f_{2} - 1} \right)}} + {{h\left( {f_{1} - 1} \right)}{h^{*}\left( {f_{2} + 1} \right)}}} \right)}\frac{1}{2}{\beta^{{SF}\; 4^{2}}.\mspace{79mu} {since}}}} & \left( {B\; 17} \right) \\ {\mspace{79mu} {{{\sum\limits_{i}^{\;}\; {{sign}\; \left( {c_{r},c_{t}^{i}} \right)\beta^{i^{2}}}} \approx {{- \beta^{{SF}\; 4^{2}}} + \beta^{{SF}\; 2^{2}}}} = {\beta^{{SF}\; 4^{2}}.}}} & \left( {B\; 18} \right) \end{matrix}$

The fact that the β² factor for SF2 is twice that of SF4 was here used. If only SF2 data is sent and the control channels are neglected, then the correction is twice the size:

R _(u) ^(corr)(f ₁ ,f ₂)=−(h(f ₁+1)h*(f ₂−1)+h(f ₁−1)h*(f ₂+1))β^(SF4) ² .  (B19)

APPENDIX C LMMSE

A covariance matrix R_(u) according to the classical impairment assumptions can be expressed (c.f. B9):

$\begin{matrix} {R_{u} = {\frac{1}{SF}\left( {R_{y} - {\sigma_{x}^{2}{hh}^{H}}} \right)}} & \left( {C\; 1} \right) \end{matrix}$

The autocorrelation matrix R_(y) is the adequate term for LMMSE, and is estimated using the autocorrelation function of the antenna signal.

Taking the correlation properties (10a-b) into account, gives a corresponding relation (B15), in which a correction term appears. Since LMMSE is performed before despreading, the correction term can also be formulated as a correction term R_(y) ^(corr) to the R_(y) matrix instead:

$\begin{matrix} {R_{u} = {\frac{1}{{SF}_{c_{r}}}{\left( {R_{y} + R_{y}^{corr} - {\sigma_{x}^{2}{hh}^{H}}} \right).}}} & \left( {C\; 2} \right) \end{matrix}$

The term R_(y) ^(corr) thus becomes:

$\begin{matrix} {{R_{y}^{corr}\left( {f_{1},f_{2}} \right)} = {{- \left( {{{h\left( {f_{1} + 1} \right)}{h^{*}\left( {f_{2} - 1} \right)}} + {{h\left( {f_{1} - 1} \right)}{h^{*}\left( {f_{2} + 1} \right)}}} \right)}\frac{1}{2}{\sum\limits_{i}^{\;}\; {{sign}\; \left( {c_{r},c_{t}^{i}} \right)\beta^{i^{2}}}}}} & \left( {C\; 3} \right) \end{matrix}$

and c_(r) is the channelization code to be used in the subsequent despreading process, and c_(t) ^(i) are the used channelization codes.

Thus, to use the chip level LMMSE and take the despreading correlation into account, the autocorrelation should be compensated with R_(y) ^(corr). With this compensation, the modified LMMSE becomes equivalent to the GRake with correct impairment matrix. LMMSE and GRake are equivalent only if the hypothesis of random codes is true. 

1. A method for equalizing a received radio signal in a Wideband Code Division Multiple Access system, comprising the steps of: receiving, in a radio receiver, a digital radio signal (24) spread by scrambling codes; performing a channel estimation on said received digital radio signal for a plurality of channels; and equalizing said received digital radio signal, in an equalizer, into an equalized digital radio signal, by combining a plurality of part signals, deduced from said digital radio signal, with a respective delay and a respective combining weight, wherein said step of equalizing comprises provision of said combining weights based on a signal impairment matrix having elements compensated for systematic colouring caused by said scrambling codes.
 2. The method according to claim 1, wherein said digital radio signal spread by scrambling codes is an uplink signal.
 3. The method according to claim 1, wherein said elements in said impairment matrix are compensated for fourth order moments of said scrambling codes.
 4. The method according to claim 1, further comprising the step of performing a searching of said respective delays for said plurality of channels.
 5. The method according to claim 1, further comprising the step of performing a determination of β factors for channels in said digital radio signal, whereby said elements in said signal impairment matrix are based on said β factors.
 6. The method according to claim 1, wherein said step of equalizing is a symbol-level equalizing, whereby said step of equalizing in turn comprises the steps of: dividing said received digital signal in said plurality of part signals, representing a respective channel of said plurality of channels; delaying each part signal by said respective delay into delayed part signals; calculating said respective combining weights as a product of said channel estimations and an inverse of said signal impairment matrix; despreading each part signal into a symbol-level part signal by a first spreading code; and combining said symbol-level part signals with said respective combining weights into said equalized digital radio signal.
 7. The method according to claim 6, wherein said step of calculating comprises despreading each part signal with a second spreading code of a control channel comprising a pilot signal, estimating a pilot impairment matrix having elements compensated for systematic colouring caused by said scrambling codes and modifying said pilot impairment matrix into said signal impairment matrix in dependence on said first and second spreading factors.
 8. The method according to claim 6, wherein said step of calculating comprises despreading each part signal with a second spreading code of an unused channel, estimating a noise impairment matrix having elements compensated for systematic colouring caused by said scrambling codes and modifying said noise impairment matrix into said signal impairment matrix in dependence on whether said first and second spreading factors are present in a same orthogonal variable spreading factor sub-tree or not.
 9. The method according to claim 1, wherein said step of equalizing is a chip-level equalizing, whereby said step of equalizing in turn comprises the steps of: filtering said received digital signal into an equalized chip signal, minimizing a distortion by use of a least minimum mean square error approach; calculating said respective combining weight for each chip-level part signal as a product of said channel estimations and an inverse of said signal impairment matrix; said step of calculating comprises calculation of an autocorrelation impairment matrix using autocorrelation of said received digital signal; said step of calculating further comprises precompensating said autocorrelation impairment matrix into a signal impairment matrix by compensating a subsequently appearance of systematic colouring that will be caused by the scrambling codes in a subsequent despreading procedure; and despreading said equalized chip signal to a symbol-level by a first spreading code, giving said equalized digital radio signal.
 10. A radio receiver arrangement in a Wideband Code Division Multiple Access system, comprising: a radio receiver, configured for receiving a digital radio signal spread by scrambling codes; and an equalizer, connected to said radio receiver, and comprising an equalizer core, a channel estimator and a combining weight estimator; said equalizer core configured for combining a plurality of part signals, deduced from said digital radio signal, with a respective delay and a respective combining weight, into an equalized digital radio signal wherein said combining weight estimator is configured for providing said combining weights to said equalizer core, said combining weights being based on a signal impairment matrix having elements compensated for systematic colouring caused by said scrambling codes.
 11. The radio receiver arrangement according to claim 10, wherein said combining weight estimator is configured for compensating said elements in said impairment matrix for fourth order moments of said scrambling codes.
 12. The radio receiver arrangement according to claim 10, wherein said equalizer further comprises a channel searcher, configured for searching for said respective delays for said plurality of channels.
 13. The radio receiver arrangement according to claim 10, wherein said equalizer further comprises a β factor determiner, configured for performing a determination of β factors for channels in said digital radio signal.
 14. The radio receiver arrangement according to claim 10, wherein said equalizer is a symbol-level equalizer; said equalizer core comprising: a divider, configured for dividing said received digital signal in said plurality of part signals; a delay filter, configured for delaying each part signal by said respective delay into delayed part signals; a despreader arrangement, configured for despreading each delayed part signal into a symbol-level part signal by a first spreading code; and a combiner, combining said symbol-level part signals with said respective combining weights into said equalized digital radio signal.
 15. The radio receiver arrangement according to claim 14, wherein: said combining weight estimator further comprises an estimator despreader, configured for despreading each part signal with a second spreading code of a control channel comprising a pilot signal; said combining weight estimator further configured for estimating a pilot impairment matrix having elements compensated for systematic colouring caused by said scrambling codes; and said combining weight estimator further configured for modifying said pilot impairment matrix into said signal impairment matrix in dependence on said first and second spreading factors.
 16. The radio receiver arrangement according to claim 14, wherein: said combining weight estimator further comprises an estimator despreader, configured for despreading each part signal with a second spreading code of an unused channel; said combining weight estimator further configured for estimating a noise impairment matrix having elements compensated for systematic colouring caused by said scrambling codes; and said combining weight estimator further configured for modifying said noise impairment matrix into said signal impairment matrix in dependence on whether said first and second spreading factors are present in a same orthogonal variable spreading factor sub-tree or not.
 17. The radio receiver arrangement according to claim 10, wherein said equalizer is a chip-level equalizer; said equalizer core comprising: a filter, configured for filtering said received digital signal into equalized chip signal, minimizing a distortion by use of a least minimum mean square error approach; said combining weight estimator further configured for calculating of said respective combining weight for each chip-level part signal as a product of said channel estimations and an inverse of said signal impairment matrix; said combining weight estimator further configured for calculation of an autocorrelation impairment matrix using autocorrelation of said received digital signal; said combining weight estimator further configured for precompensating said autocorrelation impairment matrix into a signal impairment matrix by compensating a subsequently appearance of systematic colouring that will be caused by the scrambling codes in a subsequent despreading procedure; and said equalizer core further comprising a despreader arrangement, configured for despreading said equalized chip signal to a symbol-level by a first spreading code, giving said equalized digital radio signal.
 18. A radio base station comprising a radio receiver arrangement according to claim
 10. 